AngularJS之页面跳转Route实例代码


Posted in Javascript onMarch 10, 2017

AngulagJs的页面使用Route跳转

1.除了引用AngularJs.js外,还要引用路由JS, "~/Scripts/angularjs/angular-route.js"

2.通过$routeProvider定义路由,示例

var testModule = angular.module('testModule', ['ngRoute']);

testModule.config(['$routeProvider', function ($routeProvider) {
 $routeProvider.when('/2', {//'/2'定义的路由路径,以后通过此路径访问,通常定义为短路径
  templateUrl: "/home/index2",//"/home/index2"是路由实际访问的路径,可以是asp.net mvc的访问路径(如此例),也可是具体的页面路径,如“test/test.html"
  controller:'testController'//路由跳转的controller,后面必须定义此控制器
 });

 $routeProvider.when('/3', {
  templateUrl: "/home/index3",
  controller:'testController'
 })

}]);

3.使用路由跳转,结合ng-view做spa

3.1  在JS中使用$location进行跳转,如示例,在需要的时候调用goToIndex2即可

testModule.controller("testController", ["$scope", "$location", function ($scope, $location) {

 $scope.goToIndex2 = function () {
  $location.path("/2")
 }
}]);

3.2 在html代码中使用href="#path"来进行跳转

<html >
<head>
 <meta name="viewport" content="width=device-width" />
 <title>Index1</title>
 @Styles.Render("~/Content/css/base")
 @Scripts.Render("~/script/base")
 <script src="~/scripts/ngmoudle/app.js"></script>
</head>
<body>
 <div ng-app="testModule" ng-controller="testController">
  <header>
   <h1>This is Index1</h1>
   <button type="button" class="btn btn-default" ng-click="goToIndex2()">Index2</button>
   <a href="#/3" class="btn btn-default">Index3</a><!--通过heft="#path"方式进行跳转-->
   <a href="#/2" class="btn btn-default" >Index2</a>
    </header>
  <div ng-view>

  </div>
  <footer>PAGE FOOTER</footer>
 </div>
</body>
</html>

 4.关于Angularjs版本不得不说的问题(追加部分),“/"变”%2F”问题

新的项目直接使用Nuget获取Angularjs后,发现按照以上的写法,不能跳转了,表现症状为 <a href="#/2">Index2</a> 点击之后,发现浏览器地址变为“#%22”,“/"变”%2F”导致路由不能跳转了,一顿猛查和调试,才发现AngularJs自1.6版本后对地址做了特别处理 知道原因后,解决问题也很简单,在Angular中声明用回旧有方式即可。

可参见 http://stackoverflow.com/questions/41211875/angularjs-1-6-0-latest-now-routes-not-working

testModule.config(['$locationProvider', function($locationProvider) {
 $locationProvider.hashPrefix('');
}]);

testModule.config(['$locationProvider', function($locationProvider) { $locationProvider.hashPrefix(''); }]);

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 限制输入和粘贴(IE,firefox测试通过)
Nov 14 Javascript
JQuery 学习技巧总结
May 21 Javascript
IE 当eval遇上function的处理
Aug 09 Javascript
有关JavaScript的10个怪癖和秘密分享
Aug 28 Javascript
JavaScript作用域与作用域链深入解析
Dec 06 Javascript
浅谈JavaScript中的String对象常用方法
Feb 25 Javascript
JavaScript生成随机数的4种自定义函数分享
Feb 28 Javascript
jQuery插件scroll实现无缝滚动效果
Apr 27 Javascript
JQuery EasyUI的使用
Feb 24 Javascript
JavaScript ES5标准中新增的Array方法
Jun 28 Javascript
js 轮播效果实例分享
Dec 28 Javascript
EasyUI 数据表格datagrid列自适应内容宽度的实现
Jul 18 Javascript
Angular多选、全选、批量选择操作实例代码
Mar 10 #Javascript
jQuery插件HighCharts绘制2D带有Legend的饼图效果示例【附demo源码下载】
Mar 10 #Javascript
Vue.js之slot深度复制详解
Mar 10 #Javascript
JS实现的自动打字效果示例
Mar 10 #Javascript
jquery实现的table排序功能示例
Mar 10 #Javascript
微信小程序 向左滑动删除功能的实现
Mar 10 #Javascript
常用的js方法合集
Mar 10 #Javascript
You might like
PHP几个数学计算的内部函数学习整理
2011/08/06 PHP
php获取本地图片文件并生成xml文件输出具体思路
2013/04/27 PHP
PHP根据传来的16进制颜色代码自动改变背景颜色
2014/06/13 PHP
PHP中iconv函数知识汇总
2015/07/02 PHP
php简单实现多语言切换的方法
2016/05/09 PHP
PHP折半(二分)查找算法实例分析
2018/05/12 PHP
PHP的图像处理实例小结【文字水印、图片水印、压缩图像等】
2019/12/20 PHP
基于jQuery的遍历同id元素 并响应事件的代码
2012/06/14 Javascript
JavaScript词法作用域与调用对象深入理解
2012/11/29 Javascript
利用js读取动态网站从服务器端返回的数据
2014/02/10 Javascript
JQuery中extend使用介绍
2014/03/13 Javascript
javascript的数组和常用函数详解
2014/05/09 Javascript
一行命令搞定node.js 版本升级
2014/07/20 Javascript
vue component组件使用方法详解
2017/07/14 Javascript
Angular4学习笔记之新建项目的方法
2017/07/18 Javascript
使用electron制作满屏心特效的示例代码
2018/11/27 Javascript
解决vuex刷新状态初始化的方法实现
2019/08/15 Javascript
vue中jsonp插件的使用方法示例
2020/09/10 Javascript
python实现根据ip地址反向查找主机名称的方法
2015/04/29 Python
Python中对象迭代与反迭代的技巧总结
2016/09/17 Python
Python设计模式之代理模式实例详解
2019/01/19 Python
pytorch获取模型某一层参数名及参数值方式
2019/12/30 Python
借助Paramiko通过Python实现linux远程登陆及sftp的操作
2020/03/16 Python
在Windows上安装和配置 Jupyter Lab 作为桌面级应用程序教程
2020/04/22 Python
vscode写python时的代码错误提醒和自动格式化的方法
2020/05/07 Python
HTML5的结构和语义(5):交互
2008/10/17 HTML / CSS
html5 canvas实现圆形时钟代码分享
2013/12/25 HTML / CSS
简单html5代码获取地理位置
2014/03/31 HTML / CSS
有关HTML5页面在iPhoneX适配问题
2017/11/13 HTML / CSS
经济管理专业毕业生推荐信
2013/11/11 职场文书
学校地质灾害防治方案
2014/06/10 职场文书
淘宝文案策划岗位职责
2015/04/14 职场文书
2015年司机年终工作总结
2015/05/14 职场文书
2016年端午节校园广播稿
2015/12/18 职场文书
浅谈Vue的computed计算属性
2022/03/21 Vue.js
Redis 异步机制
2022/05/15 Redis