AngularJs的关于路由问题

  初学AngularJs一些天,发现AngularJs到最后的时候会很难。刚刚开始的时候特别不容易适应,到中间的部分,还是比较简单,到最后的时候就发现特别难。我看到了网站上说到了AngularJs中,学习路线是比较奇怪的,有些诡异。我想想不知道是不是对的。今天我在学习AngularJs路由知识点的时候,遇到了一些问题,就是路由不到。以下是刚刚开始写的代码。

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>AngularJs路由应用</title>
 6     <script src="js/angular.min.js"></script>
10     <script src="http://apps.bdimg.com/libs/angular-route/1.3.13/angular-route.js">
11     </script>
12     <script type="text/javascript">
13     var app=angular.module(‘routeDemoApp‘,[‘ngRoute‘]);
14     app.config([‘$routeProvider‘,function($routeProvider){
15         $routeProvider
16         .when(‘/‘,{template:‘this is index!‘})
17         .when(‘/tianmao‘,{template:‘this is Tmall‘})
18         .when(‘/taobao‘,{template:‘this is taobao‘})
19         .otherwise({redirectTo:‘/‘});
20     }]);
21     </script>
22  <!-- $routeProvider 用来定义路由规则 -->
23 </head>
24 <body ng-app="routeDemoApp">
25     <h1>AngularJS 路由应用</h1>
26     <ul>
27         <li><a href="#/">Index</a></li>
28         <li><a href="#/tianmao">Tmall</a></li>
29         <li><a href="#/taobao">Taobao</a></li>
30         <li><a href="#/blabla">其他</a></li>
31     </ul>
32     <div ng-view></div>
36 </body>
37 </html>

  使用AngularJs是1.6.1版本,而我在一个菜鸟学习网站上用的是1.4版本的。

  刚刚开始的时候,我以为是代码出现了问题,仔细检查之后发现,脚本和HTML都没啥问题。经过排除法,发现是AngularJs出现了问题。如果是代码不正确的话,后台最起码会报个错,可是后台也没有提示出现什么错误。很诡异誒。当时想想要不是慢慢排除,也不知道会是版本的问题。至于为什么是版本的问题,我觉得还是有必要去深入了解一下的。可是百度之后也没有发现什么比较有价值的线索。

  

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>AngularJs路由应用</title>
 6     <!-- <script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script> -->
 7     <script src="http://apps.bdimg.com/libs/angular-route/1.3.13/angular-route.js">
 8     </script>
 9     <script type="text/javascript">
10     var app=angular.module(‘routeDemoApp‘,[‘ngRoute‘]);
11     app.config([‘$routeProvider‘,function($routeProvider){
12         $routeProvider
13         .when(‘/‘,{template:‘this is index!‘})
14         .when(‘/tianmao‘,{template:‘this is Tmall‘})
15         .when(‘/taobao‘,{template:‘this is taobao‘})
16         .otherwise({redirectTo:‘/‘});
17     }]);
18     </script>
19  <!-- $routeProvider 用来定义路由规则 -->
20 </head>
21 <body ng-app="routeDemoApp">
22     <h1>AngularJS 路由应用</h1>
23     <ul>
24         <li><a href="#/">Index</a></li>
25         <li><a href="#/tianmao">Tmall</a></li>
26         <li><a href="#/taobao">Taobao</a></li>
27         <li><a href="#/blabla">其他</a></li>
28     </ul>
29     <div ng-view></div>
30 </body>
31 </html>

  解释一些代码:

  

1 var app=angular.module(‘routeDemoApp‘,[‘ngRoute‘]);

  首先定义一个应用程序,使用了路由的模型,所以在定义的时候,‘ngRoute’。这个模型是路由,也可以直接在body定义。不过这样定义比较方便吧,根据我最近学习,上次学到AngularJs动画的时候,也是有动画模型。

  然后,AngularJS 模块的 config 函数用于配置路由规则。通过使用 configAPI,我们请求把$routeProvider注入到我们的配置函数并且使用$routeProvider.whenAPI来定义的路由规则。

$routeProvider 为我们提供了 when(path,object) & otherwise(object) 函数按顺序定义所有路由,函数包含两个参数:

  • 第一个参数是 URL 或者 URL 正则规则。
  • 第二个参数是路由配置对象。

  <div ng-view></div>会显示路由的内容。

  在路由规则中还好多其他的参数,不过我在学习第二例子的时候,发现好复杂。可能有待修炼!

  时间有限,下次再补充。

时间: 2024-10-13 21:24:23

AngularJs的关于路由问题的相关文章

AngularJS学习---Routing(路由) &amp; Multiple Views(多个视图) step 7

1.切换分支到step7,并启动项目 git checkout step-7 npm start 2.需求: 在步骤7之前,应用只给我们的用户提供了一个简单的界面(一张所有手机的列表),并且所有的模板代码位于index.html文件中.下一步是增加一个能够显示我们列表中每一部手机详细信息的页面.可以先看一下step6和7的代码区别 . 为了增加详细信息视图,我们可以拓展index.html来同时包含两个视图的模板代码,但是这样会很快给我们带来巨大的麻烦.相反,我们要把index.html模板转变

AngularJS ui-router (嵌套路由)

介绍 AngularJS 嵌套路由:这是我针对同一个主题(ui-router)的第二篇文章. 如果你对第一篇文章感兴趣的话,可以访问 这里. 好了,让我们继续吧,来看看嵌套的ui-router状态是怎么回事. ui-router和同属AngularJS框架一部分的ng-route一样强大. ui-router提供了让我们可以做路由嵌套和视图命名的特性. 我们将在示例中看到ui-router中存在的所有类型. 背景 引述我之前那篇文章开头给出的使用ui-router框架实现的简单路由, 基于我们的

[Angularjs]视图和路由(二)

写在前面 上篇文章主要介绍了视图和路由的基本概念,并在文章最后举了一个简单的使用案例.这篇文章将继续学习路由的配置,及相关参数的说明. 系列文章 [Angularjs]ng-select和ng-options [Angularjs]ng-show和ng-hide [Angularjs]视图和路由(一) 参数 when方法,上篇文章也提到了配置路由用到的when方法,对when方法的第二个参数可以接收哪些属性,这里将一一列举.1.controller controller:'MyControlle

[Angularjs]视图和路由(四)

写在前面 关于angularjs的路由的概念基本上这篇就要结束了,通过学习,以及在实际项目中的实践,还是比较容易上手的.自己也通过angularjs做了一个在app上的一个模块,效果还是可以的. 系列文章 [Angularjs]ng-select和ng-options [Angularjs]ng-show和ng-hide [Angularjs]视图和路由(一) [Angularjs]视图和路由(二) [Angularjs]视图和路由(三) 路由模式 不同的路由模式在浏览器的地址栏中会以不同的UR

关于AngularJs中的路由学习总结

AngularJs中的路由,应用比较广泛,主要是允许我们通过不同的url访问不同的内容,可实现多视图的单页web应用.下面看看具体怎么使用. 关于路由  通常我们的URL形式为http://jtjds.cn/first/page,但在单页web应用中angularjs通过#+标记实现,比如下面的页面,将是下文中的路由列子. http://192.168.1.109:8000/angular-program/src/main.html#/pagetable/page1 http://192.168

[Angularjs]视图和路由(三)

写在前面 上篇文章主要介绍了路由中when方法的第二个参数,常见的几个属性,以及作用.本篇文章,将介绍和路由相关的几个常见的服务. 系列文章 [Angularjs]ng-select和ng-options [Angularjs]ng-show和ng-hide [Angularjs]视图和路由(一) [Angularjs]视图和路由(二) $routeParams 有这样一种情况,在设计路由的时候,我们希望在路由上面传递参数,但是当跳转到指定的路由的时候,我们该如何接收呢?这就用到$routePa

AngularJS单页面路由配置恩,理解了就很简单啦

利用route实现单页面跳转功能 利用angularJS开发流程 1)配置好angularJS开发环境 2)利用 yo angular projectname创建项目目录 3)删除掉系统自动生成的一些自己工程不需要的页面和脚本 4)修改index.html,在 <!-- Add your site or application content here --> 以上注释下面写自己的样式内容,关键是 <div class="container-fluid" id=&qu

AngularJS 视图和路由

在AngularJS之后引用angular-route  路由   ngRoute模块加载声明 AngularJS提供的when和otherwise两个方法来定义应用的路由 otherwise方法会在没有任何路由匹配时被调用,我们用它设置了一个默认跳转到'/'路径的路由 ng-view是一个优先级为 1000的终极指令. AngularJS不会运行同一个元素上的低优先级指令 每次触发$routeChangeSuccess事件,视图都会更新. 如果某个模板同当前的路由相关联:创建一个新的作用域:移

angularjs中的路由介绍详解 ui-route(转)

http://www.cnblogs.com/littlemonk/p/5500801.html 这篇文章主要介绍了Angularjs中UI Router全攻略,涉及到angularjs ui router的基本用法,需要的朋友参考下吧 首先给大家介绍angular-ui-router的基本用法. 如何引用依赖angular-ui-router angular.module('app',["ui.router"]) .config(function($stateProvider){ $