我想更改控制器外的$scope.outsidescope
。我正在使用$routeProvider
来路由和更改控制器。 $scope.outsidescope
位于ng-view
之外。
我的问题是如何更改$scope.value
之外的ng-view
。
示例代码:
<html ng-app="Myapp">
.......
<body>
<div>
{{outsidescope}}
</div>
<div class="" data-ng-view></div>
</body>
</html>
Angular Code:
var app = angular.module('Myapp', ['ngRoute']).
config(['$routeProvider', function($routeProvider) {
$routeProvider
.when("/", {templateUrl: "partials/home4.html", controller: "PageCtrl"})
.otherwise({
redirectTo: '/pages/404'
})
}]);
app.controller('PageCtrl', ['$cookies',function ($scope) {
$scope.outsidescope = 'Some thing.';
}
答案 0 :(得分:0)
使用$ rootScope而不是$ scope在应用程序中共享数据。但创建自定义服务是最好的方法。
答案 1 :(得分:0)
只有两种方法可以在控制器之间共享数据
1)在 $ rootScope 中绑定数据 2)在服务
中绑定数据答案 2 :(得分:-2)
不可能在控制器外部更改$ scope,因为它在控制器外部不可用。
如果你想这样做,你可以使用父范围,即$ rootScope,你可以在应用程序的任何地方访问它。
但根据您的要求,最好使用ng-bind而不是表达式,并且在路由器中为每个URL调用s resolve以将值赋给此值。