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 相关文章推荐
一个简单的实现下拉框多选的插件可移植性比较好
May 05 Javascript
jquery实现动态改变div宽度和高度
May 08 Javascript
深入理解node exports和module.exports区别
Jun 01 Javascript
Node.js中npm常用命令大全
Jun 09 Javascript
JS HTML5拖拽上传图片预览
Jul 18 Javascript
浅谈JS正则表达式的RegExp对象和括号的使用
Jul 28 Javascript
对js eval()函数的一些见解
Aug 15 Javascript
Node.js配合node-http-proxy解决本地开发ajax跨域问题
Aug 31 Javascript
基于vue中keep-alive缓存问题的解决方法
Sep 21 Javascript
Vue-cli3.X使用px2 rem遇到的问题及解决方法
Aug 08 Javascript
React四级菜单的实现
Apr 08 Javascript
分享一个vue实现的记事本功能案例
Apr 11 Vue.js
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
构建简单的Webmail系统
2006/10/09 PHP
Windows PHP5和Apache的安装与配置
2009/06/08 PHP
PHP+Mysql日期时间如何转换(UNIX时间戳和格式化日期)
2012/07/15 PHP
PHP基础学习之流程控制的实现分析
2013/04/28 PHP
Zend的Registry机制的使用说明
2013/05/02 PHP
phpmyadmin配置文件现在需要绝密的短密码(blowfish_secret)的2种解决方法
2014/05/07 PHP
phpmailer简单发送邮件的方法(附phpmailer源码下载)
2016/06/13 PHP
Javascript实例教程(19) 使用HoTMetal(3)
2006/12/23 Javascript
javascript之锁定表格栏位
2007/06/29 Javascript
jQuery第三课 修改元素属性及内容的代码
2010/03/14 Javascript
javascript 闭包疑问
2010/12/30 Javascript
基于JQuery的Select选择框的华丽变身
2011/08/23 Javascript
基于Jquery实现的一个图片滚动切换
2012/06/21 Javascript
jquery如何把参数列严格转换成数组实现思路
2013/04/01 Javascript
JQuery的$和其它JS发生冲突的快速解决方法
2014/01/24 Javascript
js中this用法实例详解
2015/05/05 Javascript
javascript组合使用构造函数模式和原型模式实例
2015/06/04 Javascript
jquery实现表格隔行换色效果
2015/11/19 Javascript
jQuery中$.each()函数的用法引申实例
2016/05/12 Javascript
JS实现根据密码长度显示安全条功能
2017/03/08 Javascript
解决JQuery全选/反选第二次失效的问题
2017/10/11 jQuery
[52:20]DOTA2-DPC中国联赛正赛 SAG vs XGBO3 第一场 3月5日
2021/03/11 DOTA
python3图片转换二进制存入mysql
2013/12/06 Python
这可能是最好玩的python GUI入门实例(推荐)
2019/07/19 Python
Python 定义只读属性的实现方式
2020/03/05 Python
详解CSS3中的box-sizing(content-box与border-box)
2019/04/19 HTML / CSS
保加利亚服装和鞋类购物网站:Bibloo.bg
2020/11/08 全球购物
建筑毕业生自我鉴定
2013/10/18 职场文书
婚礼主持词
2014/03/13 职场文书
运动会班级口号
2014/06/09 职场文书
总经理岗位职责说明书
2014/07/30 职场文书
Nginx的rewrite模块详解
2021/03/31 Servers
golang elasticsearch Client的使用详解
2021/05/05 Golang
解决numpy和torch数据类型转化的问题
2021/05/23 Python
十大最强奥特曼武器:怪兽战斗仪在榜,第五奥特之父只使用过一次
2022/03/18 日漫
Java 死锁解决方案
2022/05/11 Java/Android