Angularjs 我可以使用$rootScope for factory更新视图吗?
我开始了,所以这是一个非常基本的问题 我有一个简单的工厂:Angularjs 我可以使用$rootScope for factory更新视图吗?,angularjs,Angularjs,我开始了,所以这是一个非常基本的问题 我有一个简单的工厂: angular.module('notes', ['ngResource']). factory('Notes_module', function ($resource) { var Notes_items = $resource(BASE_URL + 'xxx/:method/:guid', {}, { get_all: {method: 'GET', params: {method:
angular.module('notes', ['ngResource']).
factory('Notes_module', function ($resource) {
var Notes_items = $resource(BASE_URL + 'xxx/:method/:guid', {},
{
get_all: {method: 'GET', params: {method: 'get_all'}, isArray: true }
});
return Notes_items;
}
);
和控制器以显示注释项
function Notes($scope, Notes_module) {
$scope.notes = Notes_module.get_all();
};
现在,在我看来,我有一个简单的按钮可以从服务器获取新的notes\u项目:
<a ng-click="synchronize()">
}
检查新项目的新工厂:
angular.module('queries', ['ngResource']).
factory('Queries_module', function ($resource) {
var Queries_items = $resource(BASE_URL + 'xxx/:method/:guid', {},
{
get_all_new_note: {method: 'GET', params: {method: 'get_all_trash'}, isArray: true },
});
return Queries_items;
}
);
问题是。
当我点击“同步”按钮时,数据库更新正常。但视图不刷新。当我刷新页面时,视图也会刷新
当我将控制器中的$scope更改为$rootScope(在rootScope中保存注释)时,它会根据我的需要自动刷新视图,这很好——但这是使用$rootScope的一个好方法。我怎样才能以其他方式做到这一点?
我读到关于$apply的文章,但是当我把它添加到我的控制器时,我就不工作了 如本教程所述,您需要使用resource方法的回调并在其中设置数据。我真正需要的是控制器之间的通信。如果有人能帮助我(比如帮助我),我觉得这是一个很好的指导:
angular.module('queries', ['ngResource']).
factory('Queries_module', function ($resource) {
var Queries_items = $resource(BASE_URL + 'xxx/:method/:guid', {},
{
get_all_new_note: {method: 'GET', params: {method: 'get_all_trash'}, isArray: true },
});
return Queries_items;
}
);