我在设置包含数字属性的模型值时遇到问题。这是一个例子:
此代码不起作用:
var modelSkeleton = {id: null, name: null};
var model = rx.data.marshal.Json.createModel(modelSkeleton);
var x = {id:22,name:"New name"};
model.set(x);
但是如果我在id值上加上引号,它就可以了:
var modelSkeleton = {id: null, name: null};
var model = rx.data.marshal.Json.createModel(modelSkeleton);
var y = {id:"22",name:"New name"}
model.set(y);
我是否犯了一些错误或者这是一个错误?任何快速解决方案?
答案 0 :(得分:1)
我认为qooxdoo数据绑定的概念缺失了。为此,您需要知道代码中的第二行是做什么的。这个为您带来一些魔力,它会根据您的JavaScript对象创建一个qooxdoo类,并实现返回它的对象。附加到本机JavaScript对象的所有属性都将作为qooxdoo属性提供,必须使用常用的getter和setter进行访问。您使用的set方法只是一个快捷方式,它解析您的给定对象并设置包含的每个属性。所以通常这应该有效,但知道你在这里做什么很重要,因为当你有像阵列这样的更复杂的对象时有限制,这种方式不起作用。
的问候,
马丁
顺便说一句。它始终是qx而不是rx。 :)