说我有一个如此定义的应用程序:
angular.module('myApp', ['myControllers'])
.config(['$routeProvider', function($routeProvider) {
$routeProvider.when('/', {
templateUrl: 'myTemplate.html',
controller: 'MyController'
//???
})]);
怎么说,通过这个路线定义设置$scope.myVariable
?我想用它来做面包屑。
答案 0 :(得分:2)
我认为更好的方法就是使用路由参数。看到 https://docs.angularjs.org/api/ngRoute/service/ $ routeParams
你可以让你的路线像 /章节/:chapterId
并在您的控制器中,注入$ routeParams并访问该值,如下所示: $ routeParams.chapterId
答案 1 :(得分:0)
事实证明,您可以使用resolve
方法中的.when
属性,如下所示:
.when('/', {
templateUrl: 'myTemplate.html',
controller: 'MyController',
resolve: {
test: function() {return "test";}
}
});
然后在我的控制器中,我无法通过$scope
访问它,但我会这样注入:
.controller('MyController', ['$scope', 'test', function($scope, test) {
//test contains "test"
}]);