javascript - 为什么谷歌驱动器选择器会影响 ext js 组合字段模板?

标签 javascript extjs combobox google-api google-picker

几年前,一位前同事向我维护的项目添加了 ext 组件,特别是 Combobox。现在我正在尝试添加 a google drive picker允许用户从谷歌驱动器中选择项目。用户加载谷歌选择器后,如果他/她随后与组合框交互,结果将不会正确显示,尽管 XHR 请求正确返回数据。我在 boundlist.js 文件中看到它创建 XTemplate 对象的位置,但没有看到将它应用于商店中每条记录的位置...

Combobox results display before and after utilizing the google drive picker

有没有人处理过这个问题或类似的问题?有没有办法避免两个 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/

相关文章:

javascript - 在调用函数 “App.ServisTanimId.getValue”之前如何检查函数0x104567910是否作为属性存在?

java - 如何从 ibm Rational Function Tester 的组合框菜单中选择项目

javascript - 在codeigniter中使用javascript将组合框添加到html

javascript - iframe 中的 HTTP 重定向而不是父窗口中的重定向

javascript 循环中的闭包

javascript - switchMap() 如何解析一个 Promise?

javascript - Bootstrap 下拉菜单在与数据目标一起使用时会切换

javascript - ExtJS 日期和时区

css - 当我改变它的高度时面板标题覆盖网格 - ExtJS

wpf - 组合框 selectionchanged 事件触发,甚至无需更改 ComboBox 中的选择