广告
返回顶部
首页 > 资讯 > 前端开发 > VUE >Angular路由的基本用法是什么
  • 245
分享到

Angular路由的基本用法是什么

2024-04-02 19:04:59 245人浏览 泡泡鱼
摘要

这篇文章主要讲解了“angular路由的基本用法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Angular路由的基本用法是什么”吧!环境:Angul

这篇文章主要讲解了“angular路由的基本用法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Angular路由的基本用法是什么”吧!

Angular路由的基本用法是什么

环境:

  • Angular CLI: 11.0.6

  • Angular: 11.0.7

  • node: 12.18.3

  • npm : 6.14.6

  • IDE: Visual Studio Code

1. 摘要

简单来说地址栏中,不同的地址(URL)对应不同的页面,这就是路由。同时,点击浏览器的前进和后退按钮,浏览器就会在你的浏览历史中向前或向后导航,这也是基于路由。

在 Angular 里面,Router 是一个独立的模块,定义在 @angular/router 模块中,

  1. Router 可以配合 NgModule 进行模块的延迟加载(懒加载)、预加载操作(参考《Angular入门到精通系列教程(11)- 模块(NgModule),延迟加载模块》);

  2. Router 会管理组件的生命周期,它会负责创建、销毁组件。

对于一个新的基于AngularCLI的项目,初始化时可以通过选项,将AppRoutingModule默认加入到app.component.ts中。

2. 路由(Router)基本用法

2.1. 准备

我们首先创建2个页面,用于说明路由的使用:

ng g c page1
ng g c page2

使用上面AnuglarCLI命令,创建Page1Component, Page2Component 2个组件。

2.2. 注册路由

//src\app\app-routing.module.ts
const routes: Routes = [
  {
    path: 'page1',
    component: Page1Component
  },
  {
    path: 'page2',
    component: Page2Component
  },
];

@NgModule({
  imports: [RouterModule.forRoot(routes)],
  exports: [RouterModule],
})
export class AppRoutingModule {}

可以看到,简单的路由注册,只需要path和component2个属性,分别定义路由的相对路径,以及这个路由的响应组件。

2.3. html中的用法

<a routerLink="page1">Page1</a> |
<a routerLink="page2">Page2</a>

html模板中,直接使用routerLink属性,标识为angular的路由。执行代码,可以看到 Page1和Page2 两个超链接,点击可以看到地址栏地址改为Http://localhost:4200/page2或http://localhost:4200/page1, 页面内容在page1和page2中切换

2.4. ts 代码中的用法

有时候,需要根据ts中的业务逻辑,进行跳转。ts中,需要注入Router实例,如

constructor(private router: Router) {}

跳转代码:

  // 跳转到 /page1
  this.router.navigate(['/page1']);

  // 跳转到 /page1/123
  this.router.navigate(['/page1', 123]);

3. 接收参数

3.1. 路径中的参数

一般来说,我们把参数作为url中的一段,如/users/1, 代表查询id是1的用户,路由定义为"/users/id" 这种风格。

针对我们的简单页面,比如我们的page1页面可以传id参数,那么我们需要修改我们的routing为:

const routes: Routes = [
  {
    path: 'page1/:id',    //接收id参数
    component: Page1Component,
  },
  {
    // 实现可选参数的小技巧。 这个routing处理没有参数的url
    path: 'page1',        
    redirectTo: 'page1/',   // 跳转到'page1/:id'
  },
  {
    path: 'page2',
    component: Page2Component,
  },
];

ts代码读取参数时, 首先需要注入ActivatedRoute,代码如下:

constructor(private activatedRoute: ActivatedRoute) {}

nGonInit(): void {
  this.activatedRoute.paramMap.subscribe((params) => {
    console.log('Parameter id: ', params.get('id'));

    // 地址 http://localhost:4200/page1/33   
    // 控制台输出:Query Parameter name:  33

    // 地址 http://localhost:4200/page1/     
    // 控制台输出:Query Parameter name:   (实际结果为undefined)
  });
}

3.2. 参数(QueryParameter)中的参数

参数还有另外一种写法,如http://localhost:4200/?name=cat, 即URL地址后,加一个问号’?’, 之后再加参数名和参数值(‘name=cat’)。这种称为查询参数(QueryParameter)。

取这查询参数时,和之前的路由参数类似,只是paramMap改为queryParamMap,代码如下:

this.activatedRoute.queryParamMap.subscribe((params) => {
  console.log('Query Parameter name: ', params.get('name'));

  // 地址 http://localhost:4200/page1?name=cat
  // 控制台输出:Query Parameter name:  cat

  // 地址 http://localhost:4200/page1/
  // 控制台输出:Query Parameter name:   (实际结果为undefined)
});

4. URL路径显示格式

不同于传统的纯静态(html)站点,angular中的url不是对应一个真实的文件(页面),因为anuglar接管的路由(Routing)处理,来决定显示那个Component给终端用户。为了针对不同的场景,angular的URL路径显示格式有2中:

  • http://localhost:4200/page1/123

  • http://localhost:4200/#/page1/123

默认是第一种,不加#的。如果需要,可以在app-routing.ts中,加入useHash: true, 如:

// app-routing.ts
@NgModule({
  imports: [RouterModule.forRoot(routes, { useHash: true })],
  exports: [RouterModule],
})

感谢各位的阅读,以上就是“Angular路由的基本用法是什么”的内容了,经过本文的学习后,相信大家对Angular路由的基本用法是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: Angular路由的基本用法是什么

本文链接: https://www.lsjlt.com/news/85001.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Angular路由的基本用法是什么
    这篇文章主要讲解了“Angular路由的基本用法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Angular路由的基本用法是什么”吧!环境:Angul...
    99+
    2022-10-19
  • Angular路由基本使用方法有哪些
    这篇文章主要讲解了“Angular路由基本使用方法有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Angular路由基本使用方法有哪些”吧!1. 摘要简单来说地址栏中,不同的地址(URL...
    99+
    2023-07-04
  • react-navigation6.x路由库的基本使用方法是什么
    这篇文章主要讲解了“react-navigation6.x路由库的基本使用方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“react-navigation6.x路由库的基本使用方法是...
    99+
    2023-06-25
  • Angular中路由有什么用
    这篇文章将为大家详细讲解有关Angular中路由有什么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。路由简介路由是实现单页面应用的一种方式,通过监听hash或者hist...
    99+
    2022-10-19
  • Angular中是如何使用路由的
    这篇文章主要介绍“Angular中是如何使用路由的”,在日常操作中,相信很多人在Angular中是如何使用路由的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Angular中...
    99+
    2022-10-19
  • Angular中路由及其用法的示例
    这篇文章主要介绍了Angular中路由及其用法的示例,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、 Angular 创建一个默认带路由的项目命令创建项目ng new ng...
    99+
    2023-06-06
  • angular中的默认路由怎么用
    本篇内容介绍了“angular中的默认路由怎么用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!0.前言前一段时间折腾angular的路由折腾...
    99+
    2023-06-29
  • angular中默认路由的理解用法详解
    目录0.前言1.路由的功能及原理2.默认路由的使用0.前言 前一段时间折腾angular的路由折腾的够呛, 这篇文章简单介绍一下自己的理解及用法。 1.路由的功能及原理 一开始并不理...
    99+
    2022-11-13
  • 路由react-router-dom的基本使用教程
    目录react-router-dom路由简介react-router-dom路由的基本使用设置默认路由常用组件介绍Router组件路由的执行过程编程式导航匹配模式模糊匹配-默认rea...
    99+
    2023-02-02
    路由react-router-dom的使用 路由react-router-dom react-router-dom使用
  • ​redis的基本用法是什么
    这篇文章给大家分享的是有关redis的基本用法是什么的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。将介绍redis的基本用法。一、Redis基础部分: 1、redis介绍与安装比...
    99+
    2022-10-18
  • Promise的基本用法是什么
    本篇内容主要讲解“Promise的基本用法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Promise的基本用法是什么”吧!基本用法1. 语法new&nb...
    99+
    2022-10-19
  • Angular路由中的懒加载、守卫、动态参数是什么意思
    本篇内容主要讲解“Angular路由中的懒加载、守卫、动态参数是什么意思”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Angular路由中的懒加载、守卫、动态参...
    99+
    2022-10-19
  • laravel路由的作用是什么
    今天小编给大家分享一下laravel路由的作用是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。在laravel中,路由的...
    99+
    2023-06-30
  • 详解react-navigation6.x路由库的基本使用
    目录react-native项目初始化安装react-native项目react-navigation路由库安装使用路由库路由跳转与路由传参设置路由标题自定义标题组件标题按钮reac...
    99+
    2022-11-12
  • Angular依赖注入体系中的基本概念是什么
    这篇文章主要介绍“Angular依赖注入体系中的基本概念是什么”,在日常操作中,相信很多人在Angular依赖注入体系中的基本概念是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大...
    99+
    2022-10-19
  • Spring的IOC基本用法是什么
    今天小编给大家分享一下Spring的IOC基本用法是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1、spring_he...
    99+
    2023-06-28
  • Navicat Premium基本用法是什么
    本篇内容主要讲解“Navicat Premium基本用法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Navicat Premium基本用法是什么”吧!N...
    99+
    2022-10-18
  • vue router路由跳转方法是什么
    本文小编为大家详细介绍“vue router路由跳转方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue router路由跳转方法是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。通过router-...
    99+
    2023-07-06
  • Memcached的基本语法是什么
    本篇内容主要讲解“Memcached的基本语法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Memcached的基本语法是什么”吧! Memcached...
    99+
    2022-10-19
  • AJAX的基本使用方法是什么
    这篇“AJAX的基本使用方法是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“AJAX的基本使用方法是什么”文章吧。一. ...
    99+
    2023-06-27
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作