ItemTpl onclick 函数调用 extjs 6
ItemTpl onclick function call extjs 6
如何在数据视图上调用 onclick 函数,
itemTpl: [
'<a onClick="this.getViewController().somefunction({id},{code});" href="#">{code}</a><br/>',
]
并在 viewController
somefunction: function(){
// some logic
}
给出了
的错误
this.getViewController() is not a function
注意:我不想做 MyApp.app.getController()
因为我有很多 ViewController,我不能把我所有的逻辑都放在中央控制器上
如果你真的想在itemTpl
中绑定一个点击功能,你需要像这样在模板中指定可访问的功能:
// Save 'this' scope to me variable for use in XTemplate scope
var me = this;
// ...
itemTpl: [
'<a onClick="this.someFunction();" href="#">{code}</a><br/>',
// Defining funtions accessible in the XTemplate
{
someFunction: function() {
// Use 'me' here, because 'this' is XTemplate
me.getViewController().someFunction();
}
}
]
但如果可能的话,我会改为在项目上使用点击监听器,如下所示:
// Save 'this' scope to me variable for use in the item scope
var me = this;
// ...
itemConfig: {
listeners: {
click: function() {
// Use 'me' here, because 'this' is the item
me.getViewController().someFunction();
}
}
}
我通常在 ExtJS 4 中工作,只是从 ExtJS 6 得到这个 documentation,所以请原谅我犯的任何错误并纠正我,以便我可以编辑答案。
如何在数据视图上调用 onclick 函数,
itemTpl: [
'<a onClick="this.getViewController().somefunction({id},{code});" href="#">{code}</a><br/>',
]
并在 viewController
somefunction: function(){
// some logic
}
给出了
的错误this.getViewController() is not a function
注意:我不想做 MyApp.app.getController()
因为我有很多 ViewController,我不能把我所有的逻辑都放在中央控制器上
如果你真的想在itemTpl
中绑定一个点击功能,你需要像这样在模板中指定可访问的功能:
// Save 'this' scope to me variable for use in XTemplate scope
var me = this;
// ...
itemTpl: [
'<a onClick="this.someFunction();" href="#">{code}</a><br/>',
// Defining funtions accessible in the XTemplate
{
someFunction: function() {
// Use 'me' here, because 'this' is XTemplate
me.getViewController().someFunction();
}
}
]
但如果可能的话,我会改为在项目上使用点击监听器,如下所示:
// Save 'this' scope to me variable for use in the item scope
var me = this;
// ...
itemConfig: {
listeners: {
click: function() {
// Use 'me' here, because 'this' is the item
me.getViewController().someFunction();
}
}
}
我通常在 ExtJS 4 中工作,只是从 ExtJS 6 得到这个 documentation,所以请原谅我犯的任何错误并纠正我,以便我可以编辑答案。