【问题标题】:Extjs 'Ext.ux.DataView.Draggable' fails on initializationExtjs 'Ext.ux.DataView.Draggable' 初始化失败
【发布时间】:2012-03-06 16:56:41
【问题描述】:

我正在尝试将视图中的 D-n-D 项目转移到另一个视图或面板。

所有来源都指向Ext.ux.DataView.Draggable。但这对我不起作用。

关注code from Extjs docs 失败:

Ext.create('Ext.view.View', {
    mixins: {
        draggable: 'Ext.ux.DataView.Draggable'
    },

    initComponent: function() {
        this.mixins.draggable.init(this, {
            ddConfig: {
                ddGroup: 'someGroup'
            }
        });

        this.callParent(arguments);
    }
});

this.mixins.draggable 设置为未定义。所以没有找到 init 方法。

错误日志:

Uncaught TypeError: Object Ext.ux.DataView.Draggable has no method 'init'

Ext.create.initComponent fiddle.jshell.net:28
Ext.define.constructor ext-all.js:15
b.callParent ext-all.js:15
Ext.define.constructor ext-all.js:15
Ext.Class.m ext-all.js:15
(anonymous function)
Ext.ClassManager.instantiate ext-all.js:15
(anonymous function) ext-all.js:15
window.onload

有什么简单的方法可以让它工作吗?

Edit1Here you can try it ;)。

【问题讨论】:

    标签: extjs view drag-and-drop draggable


    【解决方案1】:

    我终于明白了,感谢 'Mitchell Simoens' 在 sencha 论坛 上回答了同样的问题。这样我就发布了他的解决方案,我认为做得很好:Ext.ux.DataView.Draggable failed to initialization !

    简单回答: 使用 Ext.create 时不应覆盖 initComponent 并设置 mixins,而应在 Ext.define 中进行。 Example.

    【讨论】:

      【解决方案2】:

      我认为您可能需要查看:Ext.dd.DragZone - documentation linkExt.ux.DataView.Draggable 确实声明它需要它才能工作,并且它确实包含您缺少的 init 函数。希望对您有所帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-03-25
        • 2012-11-17
        • 2017-12-10
        • 2018-09-17
        • 1970-01-01
        • 2018-10-13
        • 2014-03-13
        相关资源
        最近更新 更多