gpt4 book ai didi

javascript - 保存模型时 Backbone 1.2 发出的 Json 无效?

转载 作者:行者123 更新时间:2023-11-28 07:12:54 26 4
gpt4 key购买 nike

我是 Backbone 的新手,我一直在尝试将我的模型保存到 json 文件中。

它工作正常,直到我尝试读取主干应用程序发出的 json,并且通过 Jsonlint 我发现我的 json 无效。以下是一些详细信息:

我的模型(index.htm)

     //--------------
// Model
//--------------
app.Todo = Backbone.Model.extend({
defaults: {
prenom:'',
nom:'',
adresse:'',
profession:'',
mail:'',
cin:'',
tel:''

},

我的储蓄功能

   createTodoOnEnter: function(e){

app.todoList.create(this.newAttributes());

// clean input box
prenom: this.prenom.val('');
nom: this.nom.val('');
adresse: this.adresse.val('');
profession: this.profession.val('');
mail: this.mail.val('');
cin: this.cin.val('');
tel: this.tel.val('');

},
newAttributes: function(){


return {

prenom: this.prenom.val().trim(),
nom: this.nom.val().trim(),
adresse: this.adresse.val().trim(),
profession: this.profession.val().trim(),
mail: this.mail.val().trim(),
cin: this.cin.val().trim(),
tel: this.tel.val().trim()

}

}

我保存时得到的 json :

    {
prenom: "ramy",
nom: "dabbabi",
adresse: "50 rue Fadhel ben achour",
profession: "Developpeur",
mail: "ramy@gmai.com",
cin: 09008585,
tel: 789456123
}

您可以注意到属性上没有双引号(prenom、nom...),这就是我的 json 无效的原因。

我该如何解决这个问题? Backbone 女巫中是否有任何函数允许我定义我的json格式?

我可以格式化 this.model.create 函数发送的 json 吗?

最佳答案

我猜您正在调用 toJSON方法,如果您查看文档,您会发现它实际上并不返回 JSON 字符串

Return a shallow copy of the model's attributes for JSON stringification. This can be used for persistence, serialization, or for augmentation before being sent to the server. The name of this method is a bit confusing, as it doesn't actually return a JSON string — but I'm afraid that it's the way that the JavaScript API for JSON.stringify works.

您当然可以字符串化调用的结果JSON.stringify (model.toJSON())

此外,如果有必要,您始终可以覆盖主干方法本身。

关于javascript - 保存模型时 Backbone 1.2 发出的 Json 无效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31136959/

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