我通过路由和选择器访问相同的组件。所以'/ projects'路由到项目列表组件,AND
<projects></projects>
也使用该组件。我想知道用于访问组件的方法。 底线 - 路径访问是一个完整页面,组件访问是在一个小部件中。如果通过小部件进行访问,我想改变一些方法的工作方式。
答案 0 :(得分:2)
您可以查看路由的网址
在组件的构造函数中注入private activatedRoute: ActivatedRoute
,您可以获得如下所示的网址
this.activatedRoute.url.subscribe(urlPath=>{});
检查urlPath
if projects
然后检查通过路由,否则通过选择器
答案 1 :(得分:0)
尝试一下hacky方式来做它..
将输入变量@Input() isRoute: boolean = true;
添加到组件并将其默认值设置为true。
使用选择器时,请像这样使用:
<projects [isRoute]="false"></projects>
。
现在,当此组件在路由中打开时,它会将isRoute
设置为true,否则当此组件通过选择器打开时,isRoute
将为false。 :)