Angularjs制作简单的路由功能demo


Posted in Javascript onApril 14, 2015

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

做一个简单的路由功能demo

首页:index.html

<!DOCTYPE html >

<html>
<head>
  <meta charset="utf-8" />
  <title>测试</title>
  <script src="./js/angular.min.js"></script>
  <script src="./js/angular-route.min.js"></script>
</head>
<body ng-app="myApp">
  <div ng-controller="TextController">
     <p>{{someText}}</p>
  </div>
  <div ng-view></div>
</body>
  <script>
    var myApp = angular.module('myApp', ['ngRoute']);
    myApp.controller('TextController', function ($scope) {
      $scope.someText = '测试显示内容';
    });

    //路由
    function emailRouteConfig($routeProvider) {
      $routeProvider.
      when('/', {
        controller: ListController,
        templateUrl: 'list.html'
      }).
      when('/view/:id', { //在id前面加一个冒号,从而制订了一个参数化URL
        controller: DetailController,
        templateUrl: 'detail.html'
      }).
      otherwise({
        redirectTo: '/'
      });
    }

    myApp.config(emailRouteConfig);//配置我们的路由

    messages = [{
      id: 0, sender: "123456@qq.com", subject: "你好,这是一封邮件", date: "2015年4月13日", recipients: ['wifei@163.com'], message: "你好,我是xxx,这是发送给您的邮件。"
    }, {
      id: 1, sender: "123456@qq.com", subject: "你好,这是一封邮件", date: "2015年4月13日", recipients: ['wifei@163.com'], message: "你好,我是xxx,这是发送给您的邮件。"
    }, {
      id: 2, sender: "123456@qq.com", subject: "你好,这是一封邮件", date: "2015年4月13日", recipients: ['wifei@163.com'], message: "你好,我是xxx,这是发送给您的邮件。"
    }];

    function ListController($scope) {
      $scope.messages = messages;
    }

    function DetailController($scope,$routeParams) {
      $scope.message = messages[$routeParams.id];
    }
  </script>
</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'])

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
Javascript 面向对象之重载
May 04 Javascript
javascript中类的定义及其方式(《javascript高级程序设计》学习笔记)
Jul 04 Javascript
jQuery源码分析-03构造jQuery对象-工具函数
Nov 14 Javascript
JS使用getComputedStyle()方法获取CSS属性值
Apr 23 Javascript
JavaScript中如何通过arguments对象实现对象的重载
May 12 Javascript
jQuery 顶部导航跟随滚动条滚动固定浮动在顶部
Jun 06 Javascript
javascript实现切换td中的值
Dec 05 Javascript
纯javascript版日历控件
Nov 24 Javascript
Validform验证时可以为空否则按照指定格式验证
Oct 20 Javascript
Node 升级到最新稳定版的方法分享
May 17 Javascript
vue-router 手势滑动触发返回功能
Sep 30 Javascript
基于vue实现微博三方登录流程解析
Nov 04 Javascript
javascript中几个容易混淆的概念总结
Apr 14 #Javascript
浅谈Sizzle的“编译原理”
Apr 14 #Javascript
深入探寻seajs的模块化与加载方式
Apr 14 #Javascript
javascript数组去重的方法汇总
Apr 14 #Javascript
JavaScript字符串常用类使用方法汇总
Apr 14 #Javascript
JavaScript 表单处理实现代码
Apr 13 #Javascript
JavaScript 事件绑定及深入
Apr 13 #Javascript
You might like
解析php类的注册与自动加载
2013/07/05 PHP
PHP统计当前在线用户数实例讲解
2015/10/21 PHP
PHP编程中尝试程序并发的几种方式总结
2016/03/21 PHP
详解配置 Apache 服务器支持 PHP 文件的解析
2017/02/15 PHP
PHP自动载入类文件函数__autoload的使用方法
2019/03/25 PHP
JavaScript调用Activex控件的事件的实现方法
2010/04/11 Javascript
js加强的经典分页实例
2013/03/15 Javascript
jQuery中读取json文件示例代码
2013/05/10 Javascript
JavaScript中的常见问题解决方法(乱码,IE缓存,代理)
2013/11/28 Javascript
js 实现浏览历史记录示例
2014/04/20 Javascript
JSONP跨域GET请求解决Ajax跨域访问问题
2014/12/31 Javascript
JS实现3D图片旋转展示效果代码
2015/09/22 Javascript
JS响应鼠标点击实现两个滑块区间拖动效果
2015/10/26 Javascript
Webpack实战加载SVG的方法
2017/12/26 Javascript
iView-admin 动态路由问题的解决方法
2018/10/03 Javascript
分享Angular http interceptors 拦截器使用(推荐)
2019/11/10 Javascript
javascript设计模式 ? 代理模式原理与用法实例分析
2020/04/16 Javascript
vue离开当前页面触发的函数代码
2020/09/01 Javascript
[02:15]2015国际邀请赛选手档案IG.Ferrari 430
2015/07/30 DOTA
[01:01:22]VGJ.S vs OG 2018国际邀请赛淘汰赛BO3 第一场 8.22
2018/08/23 DOTA
Python字典中的键映射多个值的方法(列表或者集合)
2018/10/17 Python
python针对不定分隔符切割提取字符串的方法
2018/10/26 Python
Python3使用TCP编写一个简易的文件下载器功能
2019/05/08 Python
python requests指定出口ip的例子
2019/07/25 Python
新手学习Python2和Python3中print不同的用法
2020/06/09 Python
爱尔兰家电数码商城:Currys PC World爱尔兰
2016/07/23 全球购物
SteelSeries赛睿官网:游戏外设和配件的领先制造商(耳机、键盘、鼠标和鼠标垫)
2018/06/17 全球购物
Rosetta Stone官方网站:语言学习
2019/01/05 全球购物
小学老师寄语大全
2014/04/04 职场文书
施工员岗位职责范本
2015/04/11 职场文书
亮剑观后感300字
2015/06/05 职场文书
实习员工转正的评语汇总,以备不时之需
2019/12/17 职场文书
python3读取文件指定行的三种方法
2021/05/24 Python
使用react+redux实现计数器功能及遇到问题
2021/06/02 Javascript
配置nginx 重定向到系统维护页面
2021/06/08 Servers
pd.drop_duplicates删除重复行的方法实现
2022/06/16 Python