我在mootools做一个todolist并且遇到以下问题。我将我的待办事项存放在一个cookie中,但问题是我无法读取我设置了多少个cookie,因此我可以获得它们的价值。
我的问题是:有没有办法计算我有多少饼干,所以我可以通过它们循环并获得正确的值。
当我把getData放在console.log中时,我得到了我的json,但我也无法从那里读取值。我做错了什么,其他实施你建议我。
提前tnx。现在我有以下代码。
window.addEvent('domready', function(){
$('add').addEvent('click', function(){
var value = $('todo').value;
var t = new Todo(value,"beschrijving",new Date(),1);
var storeData = JSON.encode(t);
var c = Cookie.write(value,storeData,{duration:1});
var getData = Cookie.read(value);
console.log(getData);
});
});
var Todo = new Class(
{
initialize: function(title,description,date,isDone){
this.title = title;
this.description = description;
this.date = new Date();
this.isDone = isDone;
},
getTitle:function()
{
return this.title;
},
getIsDone:function()
{
return this.isDone;
},
setIsDone:function(value)
{
this.isDone = value;
},
});
答案 0 :(得分:1)
您似乎错过了Cookie的核心点 - 当您设置具有指定名称的Cookie时,会覆盖该Cookie的先前值。使用您当前的方法,它永远不会包含多个项目。
你必须保留一组待办事项并序列化并存储该数组,而不是Todo对象本身。
此外,您将以这种方式快速增长最大cookie大小。我建议使用HTML5 LocalStorage。可以在Mootools Powertools中找到LocalStorage的基础包装器。