所以这就是我想要完成的事情:
'use strict';
var app = angular.module('myModule', ['ngRoute']);
app.config(function($routeProvider) {
$routeProvider
.when('/', {
redirectTo: '/pages'
})
.when('/pages/:pageName', {
templateUrl: 'views/pages/'+pageName+'html',
controller: 'MainController'
});
});
基本上,我想使用uri来确定使用哪个模板。目前我收到一个错误,我没有定义pageName,我理解。这样做会有什么不同的方式? 谢谢!
答案 0 :(得分:38)
templateUrl
可以是接受路径参数对象的函数:
.when('/pages/:pageName', {
templateUrl: function(params) {
return 'views/pages/' + params.pageName + '.html';
},
controller: 'MainController'
});
答案 1 :(得分:5)
templateUrl可以用作返回生成的URL的函数。我们可以通过传递带有routeParams的参数来操纵url。
参见示例。
.when('/:screenName/list',{
templateUrl: function(params){
return params.screenName +'/listUI'
}
})
希望得到这个帮助。