我已经开始了,所以这是一个非常基本的问题。
我有一个简单的工厂:
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;
}
);
和控制器显示note_items。
function Notes($scope, Notes_module) {
$scope.notes = Notes_module.get_all();
};
现在在我看来,我有一个简单的按钮来从服务器获取新的notes_items:
<a ng-click="synchronize()">
和控制器:
function LeftBardController($scope, Queries_module) {
$scope.synchronize = function() {
$scope.notes = Queries_module.get_all_new_note();
};
}
检查新项目的新工厂:
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但是当它添加到我的控制器时我不起作用。