Ext this.getView(...).saveDocumentAs is not a function

1、前言

  Ext 导出数据,根据官网的代码,报:this.getView(...).saveDocumentAs is not a function 的问题。php

  参考:Ext Export not workingthis

  官网代码:spa

  

2、解决方案

  主要的缘由仍是觉得找不到 Grid 的问题。我参考中使用的是 Ext.ComponentQuery.query('grid')[0]; 来寻找 Grid ,若是 一个 view 中有两个 grid 咱们须要找,看看是那个 grid,不一样通用。因此我使用的方式是经过传入的 btn 来找最近的 grid。完美解决还通用3d

    exportTo: function (btn) {

        var cfg = Ext.merge({
            title: 'Grid export demo',
            fileName: 'GridExport' + '.' + (btn.cfg.ext || btn.cfg.type)
        }, btn.cfg);

        //参考的
        var p = Ext.ComponentQuery.query('grid')[0];
        p.saveDocumentAs(cfg)//若是一个view中有两个 grid 不适用

        //本身推到的
        this.getView().query('grid')[0].saveDocumentAs(cfg);//若是一个view中有两个 grid 不适用

        //最后使用
        btn.up('grid').saveDocumentAs(cfg);//通用
    },
相关文章
相关标签/搜索