将条目添加到树后,将不显示该条目。 Extjs

时间:2018-12-11 14:00:30

标签: javascript extjs

应用程序显示树。 记录是使用“行编辑”插件添加的。

在控制器中,通过单击“创建”按钮,将触发一个事件。

...
onAddChild: function(el) {
        var grid = el.up('treepanel'),
            sel = grid.getSelectionModel().getSelection()[0],
            store = grid.getStore();


        store.suspendAutoSync()
        var child = sel.appendChild({
            text: '',
            leaf: true
        });    
       sel.expand()
        grid.getView().editingPlugin.startEdit(child);
        store.resumeAutoSync();

    },
...

插件本身看起来像这样:

plugins: [{
        ptype: 'rowediting',
        clicksToMoveEditor: 1,
        autoCancel: false,
        listeners: {
            afteredit: function (editor, context, eOpts) {
                context.store.reload();

            },
            canceledit: function (editor, context, eOpts) {
                context.store.reload();
            },
            beforeedit: function (editor, context) {
                return !context.record.isRoot();
            }
        }
    }],

商店:

Ext.define('Survey.store.QuestionTreeStore', {
    extend: 'Ext.data.TreeStore',
    model: 'Survey.model.QuestionTree',
    autoLoad: true,
    autoSync: true,
    //storeId: 'QuestionTree',
    proxy: {
        type: 'ajax',
        noCache: false,
        api: {
            create:     urlRoot + 'Create',
            update:     urlRoot + 'Update',
            destroy:    urlRoot + 'Destroy',
            read:       urlRoot + 'Read'
        },

问题在于添加了一条记录,但同时它没有显示在树中,因此我需要刷新页面以便显示记录。 如何使新条目立即出现在树中?

谢谢

0 个答案:

没有答案