--@angularJS--路由、模块、依赖注入
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了--@angularJS--路由、模块、依赖注入,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2459字,纯文字阅读大概需要4分钟。
内容图文
![--@angularJS--路由、模块、依赖注入](/upload/InfoBanner/zyjiaocheng/1243/ad485d42817c41aa946d18a5d2d5c7b4.jpg)
以下是演示angular路由切换的demo.
主页:index.html
<!doctype html>
<html ng-app="bookStoreApp">
<head>
<meta charset="UTF-8">
<title>BookStore</title>
<script src="framework/1.3.0.14/angular.js"></script>
<script src="framework/1.3.0.14/angular-route.js"></script>
<script src="framework/1.3.0.14/angular-animate.js"></script>
<script src="js/app.js"></script>
<script src="js/controllers.js"></script>
<script src="js/filters.js"></script>
<script src="js/services.js"></script>
<script src="js/directives.js"></script>
</head>
<body>
<div ng-view>
</div>
</body>
</html>
模板文件(html碎片文件)tpls/:
hello.html:
<p>{{greeting.text}},Angular</p>
bookList.html:
<ul>
<li ng-repeat="book in books">
书名:{{book.title}} 作者:{{book.author}}
</li>
</ul>
控制器文件js/:
controllers.js:
var bookStoreCtrls = angular.module(‘bookStoreCtrls‘, []);
bookStoreCtrls.controller(‘HelloCtrl‘, [‘$scope‘,
function($scope) {
$scope.greeting = {
text: ‘Hello‘
};
}
]);
bookStoreCtrls.controller(‘BookListCtrl‘, [‘$scope‘,
function($scope) {
$scope.books =[
{title:"《AngularJS从入门到精通》",author:"中华烟云"},
{title:"《AngularJS权威指南》",author:"中华烟云"},
{title:"《用AngularJS开发下一代WEB应用》",author:"中华烟云"}
]
}
]);
/**
* 这里接着往下写,如果控制器的数量非常多,需要分给多个开发者,可以借助于grunt来合并代码
*/
最后实现路由功能的是app.js:
var bookStoreApp = angular.module(‘bookStoreApp‘, [
‘ngRoute‘, ‘ngAnimate‘, ‘bookStoreCtrls‘, ‘bookStoreFilters‘,
‘bookStoreServices‘, ‘bookStoreDirectives‘ //[]内的为依赖注入的模块,ng开头的为angular自带的模块
]);
bookStoreApp.config(function($routeProvider) { //$routeProvider是angular-route.js提供的原生路由对象,可以通过$routeProvider.when({}).when({})....otherwise({});这种链式写法来配置路由
$routeProvider.when(‘/hello‘, { //‘/hello‘为路由路径,即在哈希符#后面动态输入的路径字串,如:....#/hello
templateUrl: ‘tpls/hello.html‘, //当路径为...#/hello时,调用模板文件‘tpls/hello.html‘
controller: ‘HelloCtrl‘ //当路径为...#/hello时,调用控制器文件‘js/HelloCtrl.js
}).when(‘/list‘,{ //:此时若切换到...#/list路径下
templateUrl:‘tpls/bookList.html‘, //当路径为...#/list时,调用模板文件‘tpls/bookList.html‘
controller:‘BookListCtrl‘ //当路径为...#/list时,调用控制器文件‘js/BookListCtrl.js
}).otherwise({ //:否则默认跳转到...#/hello路径下
redirectTo: ‘/hello‘
})
});
注:angular-route.js提供的原生路由对象有个缺陷,就是不能深层次嵌套。要实现深层次嵌套,还得用UI-Router,源文件为angular-UI-Router.js.
UI-Router路由插件将在下一篇讲解.
原文:http://www.cnblogs.com/koleyang/p/4509116.html
内容总结
以上是互联网集市为您收集整理的--@angularJS--路由、模块、依赖注入全部内容,希望文章能够帮你解决--@angularJS--路由、模块、依赖注入所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。