Я пытаюсь сохранить какую-то глобальную переменную в своем приложении. Я читал, что лучше использовать значение вместо службы или корнеплода.
Итак, я создал этот фрагмент кода, чтобы проверить поведение значения. Похоже, что значение изменяется в сторону контроллера, но если я использую значение в другом контроллере, изменение, похоже, будет потеряно. Есть ли способ изменить значение во время выполнения и почему изменение не является постоянным?Изменение значения не является постоянным между контроллерами
Here мой код на jsfiddle
Javascript
var myApp = angular.module('myApp',[]);
myApp.value("basePath", "");
myApp.controller('TestController', function($scope, basePath) {
$scope.preEdit = basePath;
basePath = window.location.href;
$scope.postEdit = basePath;
});
myApp.controller('SampleController', function($scope, basePath) {
$scope.transferedValue = basePath;
})
HTML:
<div ng-controller="TestController">
Before Editing: {{preEdit}}<br>
After Editing: {{postEdit}}<br>
</div>
<div ng-controller="SampleController">
In another Controller: {{transferedValue}}
</div>
Можно ли использовать это значение в службе вместо контроллера? – JohnDizzle
Да, вы можете использовать и изменять значение также в сервисах. –