几年前,一位前同事向我维护的项目添加了 ext 组件,特别是 Combobox。现在我正在尝试添加 a google drive picker允许用户从谷歌驱动器中选择项目。用户加载谷歌选择器后,如果他/她随后与组合框交互,结果将不会正确显示,尽管 XHR 请求正确返回数据。我在 boundlist.js 文件中看到它创建 XTemplate 对象的位置,但没有看到将它应用于商店中每条记录的位置...
有没有人处理过这个问题或类似的问题?有没有办法避免两个 JS 库之间的冲突?
最佳答案
我在 ExtJS 3.3 中遇到了同样的问题。
是因为gdrive js client给数组原型(prototype)添加了一个函数叫values。 combo 的 XTemplate 的子模板有一个像这样的目标“回调”:
(function(values,parent
/**/) {
with(values){ return values; }
})
这个“回调”是由 Ext.XTemplate 函数生成的。我修改了它以生成这样的“回调”:
(function(values,parent
/**/) {
if(typeof values.values != "function"){with(values){ return values; }} else {return values;}
})
问候,
久洛
关于javascript - 为什么谷歌驱动器选择器会影响 ext js 组合字段模板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36918531/