如何解决角度:单击还是[routerLink]?
我正在制作Angular页面(我的第一个页面),以允许用户编辑大型JSON对象树。
我将树中的当前位置作为路线,例如
AngularPage/Root-Child-GrandChild
和这个东西:
ngOnInit() {
this.route.paramMap.subscribe(params => {
this.path = params.get('path').split('-'); // It would be nicer to use '/' but that doesn't work with routing.
});
组件的似乎要 some 而不是 all (这是问题所在),以响应URL中的更改。
当当前选定的顶点发生变化时,我需要使用以下方法更新屏幕:
- 对象树中的新顶点,
- 要从API获取的有关该顶点的元数据。
对于新顶点,使用路由路径计算得到的可观察值效果很好。
但是,我不知道如何从API中获取数据。
一个明显的解决方法是使用(click)
而不是[routerLink]
来调用可以调用API的方法,但是那样我会失去路由。例如:
public click(vertexName) {
this.path.push(vertexName);
this.apiService.getMetadata(vertexName).subscribe((data) => { this.metadata= data; });
在VueJS中这很容易:它是一个computed
引用(并因此而依赖)this.path
并执行$.ajax
。
但是,两天后,我现在非常确信这在Angular中是不可能的。
撒谎证明我错了。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。