Javascript ProxyStore中的循环依赖项错误
我正在尝试解决extjs6中的一个棘手错误。在ProxyStore中保存记录时,我得到一个无限循环: Ext.JSON.doEncode Ext all debug.js:48683 Ext.JSON.encodeObject@Ext all debug.js:48789 Ext.JSON.doEncode@Ext all debug.js:48685 Ext.JSON.encodeObject@Ext all debug.js:48789 经过进一步调查,我发现如果我在表中再次保存一行,那么表中的数据对象就会被一些奇怪的方法污染 最初,我的存储数据(例如store.data.items[0].data)中有如下条目:Javascript ProxyStore中的循环依赖项错误,javascript,json,extjs,extjs6,Javascript,Json,Extjs,Extjs6,我正在尝试解决extjs6中的一个棘手错误。在ProxyStore中保存记录时,我得到一个无限循环: Ext.JSON.doEncode Ext all debug.js:48683 Ext.JSON.encodeObject@Ext all debug.js:48789 Ext.JSON.doEncode@Ext all debug.js:48685 Ext.JSON.encodeObject@Ext all debug.js:48789 经过进一步调查,我发现如果我在表中再次保存一行,那么表
{autoRelease: false
id: "app.model.DssMarketModel-9"
foo: "1"
bar: "2"}
如果在对话框和Ext.form.Panel中打开此对象,则可以修改并保存此对象。然而,在我保存它之后,在我对代理存储执行“同步”(即Ext.data.ProxyStore sync())后,记录被一大堆垃圾所污染
这会导致堆栈溢出循环依赖性问题,因为在请求对象的深处又有一个对同一记录对象的引用,使得同步不可能
这些新属性似乎是通过名为app.overrides.ResponseHeadersBugfix的东西放在那里的
有人知道为什么会发生这个问题吗?为什么ResponseHeadersBugFix属性会将自己附加到我的表记录上
{
getAllResponseHeaders: ()
getResponseHeader: (name)
request: constructor
getAllResponseHeaders: ()
getResponseHeader: (name)
////
autoRelease: "false"
id: "app.model.DssMarketModel-9"
foo: "1"
bar: "2"
////
request: constructor
requestId: 9
responseText: ""
responseXML: null
status: 200
statusText: "OK"
__proto__: Object
}