问题
我有控制器A,视图A和控制器B,视图B -
现在我想从Controller A加载一些信息到View B.
如何使用AngularJS实现这一目标?
到目前为止,我尝试过类似的事情
<div ng-controller="controllerA"> </div>
在我看来B但没有显示任何内容。
答案 0 :(得分:1)
这是一个角度工厂派上用场的完美例子。
angular.module('yourModuleName')
.factory('yourFactoryName', function() {
var info = "";
return {
getInfo: function() {
return info;
},
setInfo: function(data) {
info = data;
}
}
}
然后在你的控制器中你会得到一些看起来像这样的代码:
angular.module('yourModuleName')
.controller('yourControllerName', function($scope, yourFactoryName){
//Makes the factory value available for the controller to use in the view
$scope.holdFactoryValue = yourFacoryName.getInfo();
//In another controller, you could have a function like this declared to change the data
$scope.setFactoryValue = function(data) {
yourFactoryName.setInfo(data);
}
})