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 相关文章推荐
为数据添加append,remove功能
Oct 03 Javascript
jquery禁用右键示例
Apr 28 Javascript
jQuery+canvas实现的球体平抛及颜色动态变换效果
Jan 28 Javascript
JS实现左右无缝轮播图代码
May 01 Javascript
JS使用正则表达式实现关键字替换加粗功能示例
Aug 03 Javascript
AngularJS入门教程之Helloworld示例
Dec 25 Javascript
JavaScript数据结构之数组的表示方法示例
Apr 12 Javascript
jquery replace方法去空格
May 08 jQuery
Angular 4依赖注入学习教程之ValueProvider的使用(七)
Jun 04 Javascript
代码详解Vuejs响应式原理
Dec 20 Javascript
vue-cli系列之vue-cli-service整体架构浅析
Jan 14 Javascript
javascript实现鼠标点击生成文字特效
Dec 24 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/07/21 PHP
php打开远程文件的方法和风险及解决方法
2013/11/12 PHP
php导出中文内容excel文件类实例
2015/07/06 PHP
PHP反射API示例分享
2016/10/08 PHP
PHP判断是否微信访问的方法示例
2019/03/27 PHP
使用tp框架和SQL语句查询数据表中的某字段包含某值
2019/10/18 PHP
模仿JQuery sortable效果 代码有错但值得看看
2009/11/05 Javascript
js监听表单value的修改同步问题,跨浏览器支持
2009/12/31 Javascript
Jquery Ajax请求代码(2)
2011/01/07 Javascript
Jquery倒数计时按钮setTimeout的实例代码
2013/07/04 Javascript
用nodejs实现PHP的print_r函数代码
2014/03/14 NodeJs
详解JS函数重载
2014/12/04 Javascript
jQuery实现仿腾讯视频列表分页效果的方法
2015/08/07 Javascript
JavaScript基本数据类型及值类型和引用类型
2015/08/25 Javascript
Bootstrap模态框水平垂直居中与增加拖拽功能
2016/11/09 Javascript
为什么要使用Vuex的介绍
2019/01/19 Javascript
Bootstrap 时间日历插件bootstrap-datetimepicker配置与应用小结
2019/05/28 Javascript
node.js实现简单的压缩/解压缩功能示例
2019/11/05 Javascript
Python正则表达式教程之二:捕获篇
2017/03/02 Python
python+selenium实现登录账户后自动点击的示例
2017/12/22 Python
python使用json序列化datetime类型实例解析
2018/02/11 Python
Python爬虫工程师面试问题总结
2018/03/22 Python
Pandas Shift函数的基础入门学习笔记
2018/11/16 Python
python lxml中etree的简单应用
2019/05/10 Python
双向RNN:bidirectional_dynamic_rnn()函数的使用详解
2020/01/20 Python
Python json转字典字符方法实例解析
2020/04/13 Python
Mysql数据库反向生成Django里面的models指令方式
2020/05/18 Python
创建卫生先进单位实施方案
2014/03/10 职场文书
三年级小学生评语
2014/04/22 职场文书
小学生国庆65周年演讲稿范文(2篇)
2014/09/21 职场文书
退休欢送会主持词
2015/07/01 职场文书
聘任书的格式及模板
2019/10/28 职场文书
解析Java异步之call future
2021/06/14 Java/Android
微信小程序中使用vant框架的具体步骤
2022/02/18 Javascript
不负正版帝国之名 《重返帝国》引领SLG手游制作新的标杆
2022/04/07 其他游戏
Python 的演示平台支持 WSGI 接口的应用
2022/04/20 Python