我使用@ ngx-translate和localize-router。 无法从本地化的URL解析有效的Slug 如果“ about”的翻译为“ asd”,则
routerLink="about/{{'about' | localize}}" //href="about/asd"
但是如果我在这条路线上
{path: ':slug', component...}
如果我从组件中的activatedRoute遇到了麻烦 子弹asd不存在
我之所以能够管理,是因为我也在数据库中存储了所有翻译,因此,如果它没有找到带有该段的记录,则会从所有翻译中进行迭代,并在找到翻译后的值时返回键并搜索新的段
有没有办法像get或Instant方法那样从translationService中的已翻译字符串中获取密钥?
答案 0 :(得分:0)
通常,我在几个项目中使用localize-router
,但每个项目中都有类似的问题。但是-真正引起误解的是-有时我在使用时会得到不同的行为:
[routerLink]=""
过度
routerLink=""
。
您也可以尝试以下选项:
this.activatedRoute.root.url
.subscribe(res => {
const params = this.activatedRoute.snapshot.params;
});
或者这(不是您真正需要的,但有时可以帮助您):
this.activatedRoute.root.url
.subscribe(res => {
const wholeUrl = this.router.url;
});
它也是快照的另一项服务:ActivatedRouteSnapshot
,但是在我上一个使用Jasmine单元测试的项目中不起作用-模拟此问题。