码迷,mamicode.com
首页 > Web开发 > 详细

Angularjs 路由学习笔记

时间:2015-04-13 14:13:27      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:

从官网下载了最新版本的Angularjs 版本号:1.3.15

做一个简单的路由功能demo

首页:index.html

 1 <!DOCTYPE html >
 2 
 3 <html>
 4 <head>
 5     <meta charset="utf-8" />
 6     <title>测试</title>
 7     <script src="./js/angular.min.js"></script>
 8     <script src="./js/angular-route.min.js"></script>
 9 </head>
10 <body ng-app="myApp">
11     <div ng-controller="TextController">
12          <p>{{someText}}</p>
13     </div>
14     <div ng-view></div>
15 </body>
16     <script>
17         var myApp = angular.module(myApp, [ngRoute]);
18         myApp.controller(TextController, function ($scope) {
19             $scope.someText = 测试显示内容;
20         });
21 
22         //路由
23         function emailRouteConfig($routeProvider) {
24             $routeProvider.
25             when(/, {
26                 controller: ListController,
27                 templateUrl: list.html
28             }).
29             when(/view/:id, { //在id前面加一个冒号,从而制订了一个参数化URL
30                 controller: DetailController,
31                 templateUrl: detail.html
32             }).
33             otherwise({
34                 redirectTo: /
35             });
36         }
37 
38         myApp.config(emailRouteConfig);//配置我们的路由
39 
40         messages = [{
41             id: 0, sender: "584600034@qq.com", subject: "你好,这是一封邮件", date: "2015年4月13日", recipients: [wifei@163.com], message: "你好,我是xxx,这是发送给您的邮件。"
42         }, {
43             id: 1, sender: "584600034@qq.com", subject: "你好,这是一封邮件", date: "2015年4月13日", recipients: [wifei@163.com], message: "你好,我是xxx,这是发送给您的邮件。"
44         }, {
45             id: 2, sender: "584600034@qq.com", subject: "你好,这是一封邮件", date: "2015年4月13日", recipients: [wifei@163.com], message: "你好,我是xxx,这是发送给您的邮件。"
46         }];
47 
48         function ListController($scope) {
49             $scope.messages = messages;
50         }
51 
52         function DetailController($scope,$routeParams) {
53             $scope.message = messages[$routeParams.id];
54         }
55     </script>
56 </html>

列表页:list.html

<table>
    <tr>
        <td><strong>发件人</strong></td>
        <td><strong>内容</strong></td>
        <td><strong>日期</strong></td>
    </tr>
    <tr ng-repeat="message in messages">
        <td>{{message.sender}}</td>
        <td><a href="#/view/{{message.id}}">{{message.subject}}</a></td>
        <td>{{message.date}}</td>
    </tr>
</table>

详细页:detail.html

<div><strong>项目:</strong>{{message.subject}}</div>
<div><strong>发送者:</strong>{{message.sender}}</div>
<div><strong>日期:</strong>{{message.date}}</div>
<div>
    <strong>To:</strong>
    <span ng-repeat="recipient in message.recipients">
        {{recipient}}
    </span>
</div>
<div>{{message.message}}</div>
<a href="#/">回到列表</a>

以下是此次demo的坑:

1:新版的Angularjs,引用路由功能,需要单独再引用 angular-route.js 文件

2:在定义module时也需要添加对‘ngRoute‘的依赖
  angular.module(‘xxxx‘, [‘ngRoute‘])

 

Angularjs 路由学习笔记

标签:

原文地址:http://www.cnblogs.com/abinsusu/p/4421958.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!