Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript navigateByUrl在使用IONIC4的加载服务中不起作用_Javascript_Angular_Ionic Framework - Fatal编程技术网

Javascript navigateByUrl在使用IONIC4的加载服务中不起作用

Javascript navigateByUrl在使用IONIC4的加载服务中不起作用,javascript,angular,ionic-framework,Javascript,Angular,Ionic Framework,我在我的项目中使用ionic loadingCtr,以下是服务: @Injectable({ providedIn: 'root' }) export class LoadingServiceService { isLoading = false; spinner:any; constructor( public loadingController: LoadingController ) { } async showLoading(loadingId:

我在我的项目中使用ionic loadingCtr,以下是服务:

@Injectable({
providedIn: 'root'
})
export class LoadingServiceService {

  isLoading = false;
  spinner:any;
  constructor(
    public loadingController: LoadingController
  ) 
  { } 

  async showLoading(loadingId: string, loadingMessage: string = 'Loading...') {
    const loading = await this.loadingController.create({
      id: loadingId,
      message: loadingMessage,
      spinner: 'circles'
    });
    return await loading.present();
}

  async dismissLoader(loadingId: string) {
      return await this.loadingController.dismiss(null, null, loadingId).then(() => console.log('loading dismissed'));
  }


}
当我尝试从服务器检索数据时,我正在调用此服务:

 submit(value: IUserRegister, isValid: boolean) {


 this.loading2.showLoading('ifOfLoading')

 this.authenticationService.register(value)
 .pipe(first())
 .subscribe(
   data => {
     if (data) {
       console.log('OK.');
       this.loading2.dismissLoader('ifOfLoading')
       this.router.navigateByUrl('/phone-dialog');

     } else {
       console.log('Problem');
       this.loading2.dismissLoader('ifOfLoading')

     }
   },
   err => {
    this.loading2.dismissLoader('ifOfLoading')
     console.log('ERROR :', err);

   } 
 );
 }

但我的问题是,当代码执行时,这行代码是:this.router.navigateByUrl(“/phone dialog”);不起作用,但当我删除加载服务时,它起作用了,有人能告诉我问题出在哪里吗?

您使用异步和等待功能,但为什么

多亏了ionic LoadingController文档,他们在创建Popover或加载控制器时没有使用异步函数

你能不试一下吗


希望有此帮助:)

删除url前面的
/
,并尝试这一点,这与此无关。loading2.showLoading('ifOfLoading'),因为当我删除它时,它可以工作。谢谢你的回答,但我必须使用ASYNC/Wait,文档中提到的使用LoadingController似乎我看到了v3版本,但在V4上,我遵循了这个原则:它是有效的^^