Я использую объект jsonn для загрузки данных между объектами. в настоящее время использует фабрику, чтобы вернуть объект и связать его между контроллерами. Сейчас я делаю копию так:
var LevelsHere = $http.get("my.json")
.success(function(data){
var dataCopy = angular.copy(data);
return dataCopy;
});
return {
all: function() {
return LevelsHere;
}
};
Это прекрасно работает, но у меня есть кнопка, которую я хочу, чтобы вызвать эту функцию и обновить его, чтобы он получает чистую копию из my.json (так что любой изменения возвращаются).
Просто для уточнения, в каждом контроллере я называю его в сферу внутри контроллера, как так
UserService.all().then(function(data){
$scope.storeHere= data.data;
});
Я имею в виду, может быть что-то вроде $ rootscope может быть путь, потому что я делюсь между контроллеры. Итак, у вас есть общая область полномочий (которая является копией json) между контроллерами. Затем, когда я нажму кнопку обновления, он обновит этот корневой каталог с новой копией my.json, чтобы изменения вернулись обратно.
Может быть, я могу использовать метод, который я пытаюсь сейчас? Я попробовал, чтобы кнопка обновления вызывала $ get снова, но она не была привязана к обоим местам, поэтому она только обновлялась в одном контроллере.
Чтобы быстро просмотреть - у меня есть json. Я ввожу и использую в двух контроллерах с фабрикой, называя его. Я хочу обновить его, чтобы он обновлялся в обоих местах.
Вот моя попытка на обновления:
$scope.cancelProcedure = function() {
//refresh data
UserService.all().then(function(data){
$scope.levels = data.data;
};
Проблема с этим он называет текущие данные, и не обновляется с новым вызовом. Я не уверен, как сделать это обновление в обоих местах. Благодаря!!
Звучит просто, но один вопрос: действительно ли оба контроллера нуждаются в независимых копиях данных или той же копии? Вы угловались. Копирование данных, вот почему я прошу ... – mbernath
Нет, они вообще не на самом деле. – ajmajmajma