ExtJS 4.2:RowExpander - 无法正常工作

时间:2013-11-21 20:57:43

标签: extjs coffeescript deftjs

我在使用coffeescript并尝试使用rowExpander的ExtJS 4.2 MVC样式应用程序中工作。网格似乎没有渲染'rowBodyTpl',每当我点击展开行时我都会收到错误:'未捕获TypeError:尝试打开时无法调用方法'removeCls'为''未捕获TypeError:无法调用方法'addCls'of null'非常感谢任何见解或建议。

Ext.define( "Test.view.ExpandGrid",
    extend: "Ext.grid.Panel"

    alias: "widget.test-view-expandGrid"
    controller: "Test.controller.ExpandGridController"
    requires: [ "Ext.data.*", "Ext.grid.*", "Ext.grid.plugin.RowExpander" ]
    inject: [ "testStore" ]

    config:
      testStore: null

    plugins: [{
      ptype: 'rowexpander',
      rowBodyTpl : [
        'something'
      ]
    }]

    initComponent: ->

      Ext.apply( @,

        store: @getTestStore()

        columns: [
          { text: "field1", dataIndex: "field1_data" },
          { text: "field2", dataIndex: "field2_data"  },
          { text: "field3", dataIndex: "field3_data" }
        ],
        features: [
          ftype: "rowbody",
          ftype: "rowwrap"
        ]




)

@callParent( arguments )

)

1 个答案:

答案 0 :(得分:0)

我不使用coffeescript所以我不得不做一些改变,以使它成为简单的JS。 您可以查看代码\运行它here。 正如你所看到的,它完美无缺。也许尝试从你的Coffee脚本生成JS并将它与我的例子进行比较。

除了删除Coffescript,删除DeftJS特定部件和添加我自己的内存存储所需的更改之外,最大的变化可能是:

  1. 个别功能
  2. 周围缺少括号
  3. 调用Ext.applyIf而不是Ext.apply