angular中的路由简单使用

【Angular】——路由 参考资料:https://angular.cn/guide/router分享PPT:Angualr路由PPT一、基础知识<base href> 元素index.html中:<base href="/">。这是路由合成的根路径。Angular的路由器是一个可选的服务,它用来呈现指定的URL所对应的视图。它并不是Angular核心库的一部分,而是在@angular/router... 阅读详情

在单页面应用程序中比如angular应用,我们需要根据url的变化(即:不同的请求),来分配不同的资源。根据请求的URL来决定执行哪个模块,这个过程叫路由,同时,我们需要设计路由规则。

下面给出一个简单的小demo:

html结构:

<body ng-app='rootApp'>
  <ul>
    <li><a href='#/'>主页</a></li>
    <li><a href='#/floor1'>一楼</a></li>
    <li><a href='#/floor2'>二楼</a></li>
  </ul>
  <!-- ng-view 渲染站位 -->
  <div ng-view></div>
</body>
<!-- 引入angular包 -->
<script src='bower_components/angular/angular.js'></script>
<!-- 引入angular-route包 -->
<script src='bower_components/angular-route/angular-route.js'></script>
<!-- 下面是渲染模板 -->
<script id='tmpl' type='text/ng-template'>
  <h1>{{placeholder}}</h1>
</script>

js结构:

  /* 此处定义模块,由于需要设定路由,所以要注入ngRoute */
  var rootApp = angular.module('rootApp', ['ngRoute']);
  /* 定义路由表(路由规则)*/
  rootApp.config(['$routeProvider', function($routeProvider) {
    /* $routeProvider 就相当于交通警察,根据when和otherwise指挥路由走向 */
    $routeProvider
      .when('/', {
        // 当请求的“URL” / , 找当前定义控制器和视图
        controller: 'DefaultController',
        /* template: '<h1>{{hello}}</h1>' */
        templateUrl: 'tmpl'
      })
      .when('/floor1/1', {
        controller: 'Floor1',
        templateUrl: 'tmpl'
      })
      /* 这里用:id这种形式来保存路由参数,以便后来用$routeParams可以取到 */
      .when('/floor2/:id/:name/:age', {
        controller: 'Floor2',
        templateUrl: 'tmpl'
      })
      .otherwise({
        /* 都不匹配,定向到根目录 */
        redirectTo: '/'
      });
  }]);

    // 定义相关控制器
    rootApp.controller('DefaultController', ['$scope', function($scope) {
      $scope.placeholder= '当前为主页';
    }]);
    rootApp.controller('Floor1', ['$scope', function($scope) {
      $scope.placeholder = '当前为1楼';
    }]);
    rootApp.controller('Floor2', ['$scope', '$routeParams', function($scope, $routeParams) {
      /* $routeParams 用于解析请求参数 */
      console.log($routeParams);
      $scope.placeholder= '当前为2楼';
    }]);


总结:
angular中的路由需要使用它的ngRoute模块,具体使用方法如上所示,其中路由表的设计是通过模块配置$routeProvider的when和otherwise来处理不同的请求参数。
其中ng-view用于占坑,when中的template或者是templateUrl用于渲染控制层定义的数据,去填这个坑,其中路由参数是根据:parmName 来指定,通过$routeParams来解析参数。

MBIST --- PATR1.Memorybist测试原理 mem bist作为现在design设计中不可或缺的DFT设计内容,越发重要。本章节主要介绍mem bist组成部分,测试的原理以及注意事项。 阅读详情

相关推荐

LoRa模块选型指南:正点原子ATK-LORA-01与SX1278芯片深度评测(含实测距离/功耗数据)

本文深度评测了正点原子ATK-LORA-01与SX1278芯片的性能表现,通过实测数据展示其在复杂环境中的通信距离与功耗表现。特别适合智慧农业、工业监测等物联网应用场景,提供详细的配置指南和优化技巧,帮助开发者实现高效、低功耗的LoRa通信解决方案。

weixin_29191081的博客 291

$routeProvider 路由

angular.module("myApp",["ngRoute"]).config(function($routeProvider){ //when  : 路径名 /index; 路径规则 $routeProvider.when("/:type",{ templateUrl:"gequ.html" , //视图名称 controller:"demoC"        //控制器 })

qq_40446718的博客 1015

利用随机矩阵理论(random matrix theory)确定微生物网络构建阈值

利用随机矩阵理论(random matrix theory)确定微生物网络构建阈值

微生物生态学分析 7640

Angular-路由设置

Angular-路由设置

weixin_54595386的博客 1884

保姆级教程:用Intouch SMC连接S7-200 Smart PLC,Modbus TCP和S7协议一次搞定

本文详细介绍了如何使用Intouch SMC连接S7-200 Smart PLC,涵盖Modbus TCP和S7协议的双协议通信配置。通过环境准备、参数设置、常见问题排查及实战技巧,帮助工程师快速实现工业自动化系统中的稳定通信,提升设备监控效率。

weixin_30499315的博客 434

Lakes.AERMOD.View.v8.9.0 1CD大气扩散模型软件包

Lakes.AERMOD.View.v8.9.0 1CD大气扩散模型软件包 Lakes Environmental ARTM View v1.4.2 1CD放射物扩散模拟模型 Aermod View是一套完整的、功能强大的大气扩散模型软件包,并将美国EPA指定的大气扩散模型(如下)完美的集成成为一个综合的操作平 台: - AERMOD 电话TEL:18980583122  客服 QQ:11

yyii0000的博客 4001

AngularJS(九):路由

本文也同步发表在我的公众号“我的天空” AngularJS路由 AngularJS路由可以让我们通过不同的URL访问不同页面(似乎是废话),其价值主要体现在单页面的web应用中(single page web application,SPA),在移动端的web开发中,几乎都是SPA的形式。我们先通过一个简单的示例来了解AngularJS路由,随后再做进一步的...

weixin_30641465的博客 175

Xilinx PL端DP显示接口开发实战(一)——环境搭建与硬件选型

本文详细介绍了Xilinx PL端DP显示接口开发的环境搭建与硬件选型实战经验。从Vivado和Vitis 2021.1版本的软件安装要点,到DP141和MCDP6000芯片的选型建议,再到DP1.4接口的RX/TX方向开发关键点,为开发者提供了全面的技术指导。文章还分享了IP核配置、BD原理图设计以及常见问题排查的实用技巧,帮助开发者高效完成Xilinx DP接口开发项目。

weixin_29250573的博客 176

Angular中的路由

在Angular中,路由是用于在不同的视图和组件之间导航的机制。Angular提供了一种强大的路由机制来管理单页应用(SPA)中的导航。Angular 路由允许你定义应用的不同视图,并且可以在这些视图之间无缝地切换,而不需要重新加载整个页面。

GeGe&YoYo的博客 1338

论文阅读笔记--Grid Anchor based Image Cropping: A New Benchmark and An Efficient Model

基于网格锚的图片裁剪:一种新的标准和高效的模型摘要1.介绍2.相关工作2.1 图像裁剪数据集和评估指标 摘要 图像裁剪的目的是通过去除图像中无关的内容来改善图像的组成和美学质量。现有的图像裁剪数据库大多只提供一个或多个人工标注的边界框作为基准,难以反映实际中图像裁剪的非唯一性和灵活性。 采用IoU等评价指标也不能可靠地反映裁剪模型的真实性能。本文回顾了图像裁剪的问题,并通过考虑图像裁剪的特殊特性和要求(如局部冗余、内容保存、高宽比),提出了基于网格锚的公式。 我们的公式将候选裁剪窗口的搜索空间从数百万减少到

qq_22565865的博客 2949

对CryptoDriver里密钥格式定义的探索(1)

一入网络安全才发现深似海,传统汽车MCU码农转型之路异常艰难。在CP AUTOSAR中的CryptoDriver SWS对密钥格式的需求来源于RFC,其中要求了RSA、ECC、SHE等key material的格式。再往下看,我就有些迷糊了,例如关于RSA Private Key的OCTEE STRING格式根据IETF RFC8017,Public Key又得根据RFC5280,完全不得其解。所以今天先从生成密钥对,并对其进行解析开始,一步一步拆解。

认真搞搞汽车MCU 530

Angular 路由配置

Angular 路由配置

God$Sun的博客 2663

Android 车载开发深度解析:CarPropertyManager 核心机制与实践指南

摘要: Android Automotive OS中,CarPropertyManager作为车载信息娱乐系统的核心组件,连接应用层与车辆硬件(如车速、油量等),其架构基于分层设计(App→CarAPI→VHAL→ECU),采用发布-订阅模式实现高效数据通信。通过HIDL/AIDL跨进程交互及共享内存优化,延迟可降至2ms以下。安全机制包括分级权限控制(VISIBLE/PROTECTED/SYSTEM_RESTRICTED)和HMAC防篡改。开发时需注意监听器生命周期管理、事件合并降负载及低功耗适配。

郑伟强dev的专栏 344

angular路由参数_angular路由配置以及使用

一、生成路由文件按照惯例,有一个独立模块来配置相关路由,这个模块类的名字叫做AppRoutingModule,位于src/app下的app-routing.module.ts文件中。使用CLI生成它。ng generate module app-routing --flat --module=app然后查看src/app目录下是否生成成功。接下来,我们查看生成的文件:import { NgModu...

weixin_29901323的博客 3004

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

angular 路由

参考:angular-路由-文档路由案例 ①.路由参数 paramMap和Snapshot 当组件需要复用的时候使用paramMap获取路由参数:如一个组件不刷新,只更改了路由参数,那么就可以实时获取路由参数 当确定组件不复用的时候直接使用Snapshot获取路由参数,每一次打开这个组件都是一个新的实例 paramMap:paramMap的处理过程有点稍复杂。当这个 map 的值变化时,...

榴莲不好吃的专栏 1873

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

angular中路由的使用

一、路由的基本使用 1、创建两个组件 ng g c components/home ng g c components/news 2、在app-routing.module.ts中配置路由 const routes: Routes = [ // 默认访问地址 { path: '', redirectTo: 'home', pathMatch: 'ful...

水痕 799

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

angular中的路由跳转

一、概述 定义:根据不同的URL地址,动态的让根组件挂载其它组件来实现一个单页面应用。 二、安装与配置 安装项目时ng new 项目名,在询问是否要安装带路由的项目包时,选择Y。其它条件依据情况选择即可。 带路由项目与不带路由项目的区别: 多了一个路由配置文件app-routing.module.ts 在app.module.ts文件中引入了路由配置文件,并在imports中注入了。 import { AppRoutingModule } from './app-routing.modu

m0_58047238的博客 6592

三、Angular 路由

angular 路由知识

草木红的博客 1762

Angular的路由

Angular的路由 每个模块都可以创建一个路由模块,在根模块的路由模块应该是forRoot,其他路由模块应该是forChild 。RouterModule 可能会被多次导入:每个惰性加载的发布包都会导入一次。 但由于路由器要和全局共享的资源 - location 打交道,所以不能同时激活一个以上的 Router 服务。所以整个应用调用的都是同个Router服务,类似于单例。 这就是需要两种方式来创建本模块的原因:RouterModule.forRoot 和 RouterModule.forChild。

cc的博客 4254

angular路由的使用

angular路由配置项 一般需要在index.html中head标签中加入&amp;amp;amp;amp;lt;base href=&amp;amp;amp;quot;/&amp;amp;amp;quot;&amp;amp;amp;amp;gt; 但是由于angular-cli安装中已经加入了所以不用考虑了 Routers 路由配置,用来设置组件对应的url名称 import { Routes } from '@angul

llkk 6986

如何在 Angular 路由中使用路由守卫

Angular 路由的导航守卫允许授予或移除对导航的某些部分的访问权限。另一个路由守卫,守卫,甚至允许您防止用户意外离开具有未保存更改的组件。:控制是否可以激活路由。:控制是否可以激活路由的子路由。CanLoad:控制是否可以加载路由。对于懒加载的特性模块来说,这变得非常有用。如果守卫返回 false,它们甚至不会加载。:控制用户是否可以离开路由。请注意,此守卫不会阻止用户关闭浏览器选项卡或导航到不同的地址。它只会阻止应用程序内部的操作。

rubys007的博客 1204

Angular路由

为什么使用路由? 在Web开发中,路由是指将应用划分成多个分区,通常是按照从浏览器的URL衍生出来的规则进行分割。例如,访问一个网站/路径时,我们有可能正在访问该网站的home路由;又例如,访问/about时,我们想要渲染的页面等。 说通俗一些: 在地址栏输入URL时,浏览器会导航到相应页面; 在页面中点击链接,浏览器会导航到新页面; 点击浏览器的前进和后退按钮,会在你的浏览历史向前或向后导航...

沸羊羊_ 804

ANGULAR2 深入学习路由

基础 大多数带路由的应用都要在 index.html 的  标签下先添加一个  元素,来告诉路由器该如何合成导航用的 URL 。 如果 app 文件夹是该应用的根目录,那就把 href 的值设置为下面这样: 路由配置 首选方案是用带有“路由数组”的 provideRouter 工厂函数( [provideRouter(routes)] )来启动此应用。 myApp.r

huangyezi的专栏 1万+

Angular 路由

Angular 路由配置

清晨-阳光的博客 780

angular路由配置以及使用

一、生成路由文件 按照惯例,有一个独立模块来配置相关路由,这个模块类的名字叫做AppRoutingModule,位于src/app下的app-routing.module.ts文件中。 使用CLI生成它。 ng generate module app-routing --flat --module=app 然后查看src/app目录下是否生成成功。 接下来,我们查看生成的文件:...

weixin_30770783的博客 807

Angular 中的路由详细配置过程

一、Angular 创建一个默认带路由的项目 1. 命令创建项目 ng new angualrdemo08 --skip-install 2. 创建需要的组件 ng g component home ng g component news ng g component newscontent 3. 找到 app-routing.module.ts 配置路由 引入组件 import { HomeComponent } from './home/home.component'; import {

weixin_45304198的博客 2299
上一篇: Browsersync的简单使用
下一篇: JSONP跨域问题演示
Wang's Blog
博客等级 码龄12年 7434粉丝 2421原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wang's Blog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值