Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 数据模型&x27;s";连载;“未对属性调用函数”;“设置”;叮叮声_Javascript_Extjs - Fatal编程技术网

Javascript 数据模型&x27;s";连载;“未对属性调用函数”;“设置”;叮叮声

Javascript 数据模型&x27;s";连载;“未对属性调用函数”;“设置”;叮叮声,javascript,extjs,Javascript,Extjs,也在Sencha的网站上询问 调用时未调用数据模型的“serialize”函数 model.set("<fieldName>", <newValue>); 从源内容(JSON/XML)到业务模型(Ext.data.model)的映射不会在ExtJS的数据模型系统中自动创建。因此,需要另一个步骤来使用映射/关联或类似的方法生成此关系 也就是说,数据模型不存储要读/写的原始JSON,这在大多数情况下是可以的。当JSON字符串需要通过ExtJS更新时,一种解决方案是在模型上

也在Sencha的网站上询问

调用时未调用数据模型的“serialize”函数

model.set("<fieldName>", <newValue>); 

从源内容(JSON/XML)到业务模型(Ext.data.model)的映射不会在ExtJS的数据模型系统中自动创建。因此,需要另一个步骤来使用映射/关联或类似的方法生成此关系

也就是说,数据模型不存储要读/写的原始JSON,这在大多数情况下是可以的。当JSON字符串需要通过ExtJS更新时,一种解决方案是在模型上设置

   convertOnSet 

设置为false,允许通过数据模型上的提取/更新函数对JSON字符串进行自定义操作。

您缺少一些东西,1)示例代码在
convert
中抛出异常。2) 您没有执行任何操作来触发要保存到服务器的数据。您需要调用
rec.save()3)您没有为要发布到服务器的任何内容配置代理。请注意1。它仅在尝试设置字段后抛出异常。当存储第一次将内联记录加载到自身中时(并因此调用convert函数),可以从JSON字符串中提取属性。2.你说得对,我没有。我不同意“需要调用rec.save();”,因为问题不在于持久化,而在于分配属性。3.见第2条。没有必要,因为它是本地的。我对ExtJS模型系统的理解是映射是自动创建的。。事实似乎并非如此。我更新了标题,以反映我真正想问的问题。谢谢你在这个案例中的输入,它正在按预期工作。Serialize只应在数据即将写回服务器时调用。对..我现在明白了…这很烦人。IMHO数据模型应该允许将setConvert函数与convert函数一起提供。允许从一个方向而不是另一个方向进行转换是没有意义的。
   convertOnSet