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 相关文章推荐
JQuery AJAX 中文乱码问题解决
Jun 05 Javascript
三种检测iPhone/iPad设备方向的方法
Apr 23 Javascript
点击button获取text内容并改变样式的js实现
Sep 09 Javascript
jQuery实现tab选项卡效果的方法
Jul 08 Javascript
JS实现密码框根据焦点的获取与失去控制文字的消失与显示效果
Nov 26 Javascript
必备的JS调试技巧汇总
Jul 20 Javascript
ES6入门教程之let和const命令详解
May 17 Javascript
利用vue.js实现被选中状态的改变方法
Feb 08 Javascript
Vue中 v-if 和v-else-if页面加载出现闪现的问题及解决方法
Oct 12 Javascript
React 使用recharts实现散点地图的示例代码
Dec 07 Javascript
JavaScript生成随机验证码代码实例
Sep 28 Javascript
Vue 构造选项 - 进阶使用说明
Aug 14 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
2019十大人气国漫
2020/03/13 国漫
php Try Catch异常测试
2009/03/01 PHP
PHP输出英文时间日期的安全方法(RFC 1123格式)
2014/06/13 PHP
教你如何开启shopnc b2b2c 伪静态
2014/10/21 PHP
项目中应用Redis+Php的场景
2016/05/22 PHP
JavaScript自定义DateDiff函数(兼容所有浏览器)
2012/03/01 Javascript
通过js动态操作table(新增,删除相关列信息)
2012/05/23 Javascript
多个datatable共存造成多个表格的checkbox都被选中
2013/07/11 Javascript
JSON序列化与解析原生JS方法且IE6和chrome测试通过
2013/09/05 Javascript
extjs 分页使用jsp传递数据示例
2014/07/29 Javascript
jquery实现点击其他区域时隐藏下拉div和遮罩层的方法
2015/12/23 Javascript
分享有关jQuery中animate、slide、fade等动画的连续触发、滞后反复执行的bug
2016/01/10 Javascript
JS 调用微信扫一扫功能
2016/12/22 Javascript
Angularjs 动态添加指令并绑定事件的方法
2017/04/13 Javascript
Vue2.5学习笔记之如何在项目中使用和配置Vue
2018/09/26 Javascript
JQuery事件冒泡和默认行为代码实例
2020/05/13 jQuery
在Vue中使用Viser说明(基于AntV-G2可视化引擎)
2020/10/28 Javascript
[01:55]《走出家门看比赛》——DOTA2 2015国际邀请赛同城线下观战
2015/07/18 DOTA
Python httplib,smtplib使用方法
2008/09/06 Python
Python的Django框架中if标签的相关使用
2015/07/15 Python
浅谈python 四种数值类型(int,long,float,complex)
2016/06/08 Python
Python的Flask框架中集成CKeditor富文本编辑器的教程
2016/06/13 Python
浅谈python 线程池threadpool之实现
2017/11/17 Python
python删除不需要的python文件方法
2018/04/24 Python
python生成任意频率正弦波方式
2020/02/25 Python
python文件编写好后如何实践
2020/07/07 Python
Python 添加文件注释和函数注释操作
2020/08/09 Python
Joules美国官网:出色的英国风格
2017/10/30 全球购物
公司聘任书模板
2014/03/29 职场文书
公司募捐倡议书
2014/05/14 职场文书
党员干部廉洁承诺书
2014/05/28 职场文书
公司踏青活动方案
2014/08/16 职场文书
2014年班组建设工作总结
2014/12/01 职场文书
巧用 -webkit-box-reflect 倒影实现各类动效(小结)
2021/04/22 HTML / CSS
浅谈JS的二进制家族
2021/05/09 Javascript
用React Native制作一个简单的游戏引擎
2021/05/27 Javascript