如何解决角路由错误-TypeError:无法分配为只读属性'_futureSnapshot'
我有一个设置了NgRx的Angular项目。我想调度导航操作,这样就不必将路由器和ActivatedRoute注入组件中,并且一直在关注Todd Mottos的出色视频。
设置了ngrx效果以侦听导航操作。这是在根应用程序级别设置的。
// NgRx Effect
navigate$ = createEffect(() => {
... effect code
// important bit
this.router.navigate(path,{ queryParams,...extras });
},{ dispatch: false });
但是,我今天遇到了一个问题,当尝试使用功能(而非根级别)中组件的相对路径来调度导航操作时出现错误。像往常一样,我从要素组件传入ActivatedRoute,以便可以从相对路径计算出实际路径:
this.store.dispatch(new fromRootStore.Go({
path: ['..',0],extras: { relativeTo: this.route }
});
但是,出现以下错误:
无法将对象'[object Object]'的只读属性'_futureSnapshot'分配给
直接在功能组件中使用路由器,并传递组件的ActivatedRoute可以正常工作:
this.router.navigate(['..',{ relativeTo: this.route });
使用绝对路径调度路由操作也可以正常工作:
this.store.dispatch(new fromRootStore.Go({ path: '/absolute/path' });
是否与路由器位于应用程序的根级别有关,但是ActivatedSnapshot来自功能部件中的某个事实?感谢您对此提供的任何帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。