gpt4 book ai didi

tree - 为所有页面设置 dijit.Tree cookie

转载 作者:行者123 更新时间:2023-12-05 00:43:17 28 4
gpt4 key购买 nike

我在应用程序的多个页面上使用相同的 dijit.Tree View ,并且我希望将 cookie 保存为服务器名称,而不是文件夹名称。
现在我有 3 个页面和 3 个 cookie,每个页面都有自己的关于树状态的信息,这有点烦人。

有什么方法可以做到这一点?我在 API 中发现的唯一关于 cookie 的东西,是我可以设置cookieName并打开/关闭cookies。

最佳答案

好像是Tree.js不会让您为 cookie 设置属性。所以我只需要覆盖 _saveState() Tree 的方法:

var treeControl = new dijit.Tree({
model: treeModel,
showRoot: false,
openOnClick: false,
cookieName: "OrganizationUnitTreeState",
_saveState: function(){
// summary:
// Create and save a cookie with the currently expanded nodes identifiers
// Overre the default saveState function, so we can set the cookie path
if(!this.persist){
return;
}
var ary = [];
for(var id in this._openedItemIds){
ary.push(id);
}
dojo.cookie(this.cookieName, ary.join(","), {expires:365, path:"/"});
},
/* Many more methods */
});

这是那里的最后一行代码。 dojo.cookie()接受一个键/值对列表,这些列表将被转换为 cookie 属性,所以如果你想要设置任何其他属性,这就是你要做的。

关于tree - 为所有页面设置 dijit.Tree cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2508478/

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