gpt4 book ai didi

javascript - AngularJS 服务对象未在 View / Controller 之间更新

转载 作者:行者123 更新时间:2023-11-28 18:42:43 25 4
gpt4 key购买 nike

我有一个工厂“itemData”,它拥有一项服务。

 app.factory('itemData', function () {

var itemData = {

Title: 'I should be different',

getTitle: function () {
return itemData.Title;
},

setTitle: function (title) {
return itemData.Title=title;
},

// This is the function to call all of the sets for the larger object
editItem: function (entry)
{
itemData.setTitle(entry);
}


};

return itemData;

});

我有 2 个 Controller (在不同的文件中)与 2 个单独的 View 关联。第一个:

 // IndexCtrl
app.controller("IndexCtrl", ['$scope','$window','itemData',

function($scope, $window, itemData) {
var entry = "I'm different";

// After a submit is clicked
$scope.bttnClicked = function (entry) {

itemData.editItem(entry);
console.log(itemData.getTitle(); //<--itemData.Title has changed

// moves to page with other controller
$window.location.href = "edit.html";

};

}

]);

第二个,它没有做我想做的事:

 app.controller("editItemCtrl", ['$scope', '$window', 'itemData', 

function ($scope, $window, itemData){

$scope.item = {

"Title": itemData.getTitle(), //<--- Title is "I should be different"
}

}]);

最佳答案

您的 Angular 应用程序中是否有某种路由器?当您更改位置 href 时,它实际上会导致整个页面重新加载吗?

服务保存在内存中,因此不会在页面重新加载时维护状态。

关于javascript - AngularJS 服务对象未在 View / Controller 之间更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35878620/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com