Provider Returning Undefined (First Time) and correct (Second Time)

Object User:

export interface User
{
	uid?: string;
	name?: string;
	email?: string;
	gender?: string;
	birthDate?: string;
	phone?: string;
	password?: string;
}

Provider:

import { Injectable } from '@angular/core';

import { User } from '../interfaces/user';

@Injectable
({
  providedIn: 'root'
})

export class NavParamsProvider
{
  private user: User;

  constructor()
  {
    this.user = null;
  }

  getUser (): User
  {
    return this.user;
  }

  setUser (usr: User)
  {
    this.user = usr;
  }
}

Page Login (set):

async login()
{
  ... Code await ...

  if (this.loginForm.valid)
  {
    this.navParamsProvider.setUser(doc.data());
    this.router.navigateByUrl('/tabs/profile');
  }
}

Page Profile (get):

  ngOnInit()
  {
    console.log(this.navParamsProvider.getUser());
  }

When I redirect to the Profile page the User object is undefined. But on the second call it already exists.