I’m assuming that you mean the values on the page that has the modal isn’t updating, so this answer is for that.
Livewire is only controlling the modal, it’s not (at least in this component) controlling the rest of the page outside of the modal. So you are updating the user model in the database, but the page itself has no idea the database changed without getting that new information.
If the info you want updated outside of the modal isn’t already a livewire component, you can make it one, and have the modal tell it to refresh through events.
In your quickSave() method, add $this->emit('staffDirectoryRefresh');
Then in your other component register a listener that triggers the render method.
public $listeners = ['staffDirectoryRefresh' => 'render']
I don’t know if there’s a way built in to trigger a refresh on another component. If there is, I don’t know it, and this is how I did it.
Outside of your question and to make your life a little easier in the future, this line $user = User::whereId(Auth::user()->id)->first();
can be changed to $user = Auth::user()
No need for an extra database call, Auth::user() already contains the user model you are asking for. Also you can take out $this->redirect('#');
, it’s not serving you any purpose.