当使用'x.y'的Ext.data.Store'mapping'配置属性,并且映射模型不包含'x'属性时,存储会抛出异常,从而阻止存储数据渲染到数据存储加载的网格视图中。
如果存储源不在您的控制之下,当映射路径的根目录不存在时,是否可以避免/捕获异常。我尝试使用'convert'函数作为数据存储的target属性。进入JSON文档的映射路径仅由运行上下文确定[例如this.mappingPath。动态生成转换函数(以捕获异常)似乎会使页面变慢一些。
在ExtJS API中是否存在沿着模型的映射路径的null结果的解决方案,或者是从转换函数中捕获异常的方式?或者可能是另一种解决方案......
答案 0 :(得分:0)
我最终只使用了一个转换函数,在这种情况下调用了'followPath'类型函数。跟随路径将映射组件分解为它的部分(在'。'上拆分)并遍历列表,沿着路径重新调整上下文到context = context [part]。所以调用是followPath(item.data,path)。这表现良好,并完成工作。