使用用户在页面URL中输入的路径

时间:2018-09-18 09:01:42

标签: angular typescript url angular6

我正在用角度6构建应用程序,并且正在寻找一种功能,可以使用该功能来使用用户在网站的浏览器地址栏中键入的任何内容,

例如:

用户输入域“ myproject.example/5/cool

然后网站应提供输出“用户5cool!”

是否可以读取用户在URL中键入的内容?

预先感谢

1 个答案:

答案 0 :(得分:1)

是的,可以读取地址栏中的网址。有两种方法可以实现:使用ActivatedRouteRouter

ActivatedRoute

ActivatedRoute将要求app-routing.module.ts带有要在组件中显示的元素:

{ path: ':customerId/:state', component: YourComponent }

然后,在您的组件中:

 constructor(private route: ActivatedRoute) {
      this.route.paramMap.subscribe(params => {
        this.customerId = params.get('customerId');
        this.state = params.get('state');
    });
  }

您只需要使用customerIdstate来构建输出。

路由器

如果您不想使用路由(或者由于任何原因而不能),也可以使用Router来读取URL。您只需要解析它:

 constructor(private router: Router) {
      this.href = this.router.url;
 }