我在使用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 )
)
答案 0 :(得分:0)
我不使用coffeescript所以我不得不做一些改变,以使它成为简单的JS。 您可以查看代码\运行它here。 正如你所看到的,它完美无缺。也许尝试从你的Coffee脚本生成JS并将它与我的例子进行比较。
除了删除Coffescript,删除DeftJS特定部件和添加我自己的内存存储所需的更改之外,最大的变化可能是: