我有一个带有treeviewdragdrop插件的树面板。在我的 Controller 中,我需要要求用户选择是否要删除节点或复制它。
Ext.define('App.view.admin.LevelTree', {
extend: 'Ext.tree.Panel',
xtype: 'leveltree',
requires: ['Ext.tree.plugin.TreeViewDragDrop'],
viewConfig: {
preserveScrollOnRefresh: true,
plugins: {
ptype: 'treeviewdragdrop'
}
}
这是我的 Controller 代码:
me.getLevelTree().getView().on('drop', me.doChangeParent, me);
--
doChangeParent: function(node, data, overModel, dropPosition, eOpts) {...}
如何根据用户选择在树面板(在 Controller 中)中设置 copy: true 属性?
最佳答案
您可以使用插件并查看配置,如下所示:
viewConfig: {
plugins: {
ptype: 'treeviewdragdrop'
},
listeners: {
beforedrop: function(node, data, overModel, dropPosition, dropHandlers) {
dropHandlers.wait = true;
Ext.MessageBox.confirm('Copy or move', 'If you want to copy node, press Yes', function(btn) {
data.copy = (btn === 'yes');
dropHandlers.processDrop();
});
}
}
},
关于javascript - ExtJS 拖放中的动态复制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27600661/