Angular中使用JS实现路由跳转动态路由传值get方式传值

Posted 公众号:霸道的程序猿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Angular中使用JS实现路由跳转动态路由传值get方式传值相关的知识,希望对你有一定的参考价值。

场景

Angular介绍、安装Angular Cli、创建Angular项目入门教程:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/105570017

Angular新建组件以及组件之间的调用:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/105694997

通过以上搭建起Angular项目。

Angular中的路由配置、路由重定向、默认选中路由:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/106182994

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

除了在超链接中进行路由跳转,有时还需要在js中控制进行路由的跳转

JS控制路由跳转

首先在app.routing.module.ts中引入要跳转的组件并配置要跳转的路由

const routes: Routes = [
  {path:\'parent\',component:ParentComponent}
];

然后在页面中添加一个button并添加点击事件

<button (click)="goParent()">跳转</button>

然后在ts中需要引入Router

import {Router} from \'@angular/router\';

并进行声明

constructor(private router:Router) { }

然后在对应的方法中

  goParent()
  {
    this.router.navigate([\'/parent\']);
  }

效果

 

 

JS控制动态路由

Angular中实现动态路由跳转并传递参数:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/106203529

动态路由的配置同上面一样

在页面新建按钮并设置点击事件

<button (click)="goDetails()">动态路由跳转</button>

然后在app.routing.module.ts中引入要跳转的组件并配置动态路由

const routes: Routes = [
  {path:\'newsdetail/:id\',component:NewsdetailComponent}

];

在点击事件中

  goDetails()
  {
    this.router.navigate([\'/newsdetail/\',\'123\']);
  }

效果

 

 

JS控制路由get传值跳转

Angular中实现路由跳转并通过get方式传递参数:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/106203220

配置get传值方式同上。

在页面新建按钮并设置点击事件

<button (click)="goDetails2()">get路由跳转</button>

除了需要引入Router外还要引入NavigationExtras

import {Router,NavigationExtras} from \'@angular/router\';

然后在app.routing.module.ts中引入要跳转的组件并配置路由

const routes: Routes = [
   {path:\'newsdetail\',component:NewsdetailComponent}
];

在点击事件中

  goDetails2()
  {
    let navigationExtras: NavigationExtras = {
      queryParams: { \'session_id\': \'123\' },
      fragment: \'anchor\'
      };
      
      this.router.navigate([\'/newsdetail\'],navigationExtras);
  }

效果

 

 

以上是关于Angular中使用JS实现路由跳转动态路由传值get方式传值的主要内容,如果未能解决你的问题,请参考以下文章

angularjs中使用路由,当跳转到某个view的时候我想执行在子页面中写好的js方法,有啥办法实现?

react路由传值

vue路由传值

Angular跳转传值(get,动态路由,js)

angularjs路由传值$routeParams

ionic5 路由跳转跳转传值返回上一页返回到根