我创建了一个 Ext.Mixin 组件,并想从另一个组件调用它的函数。我该怎么做?一定很明显,但我现在看不到。
编辑:
Ext.define('ABC.mixin.MyMixin', {
extend: 'Ext.Mixin',
mixinConfig: {
after: {
},
before: {
initComponent: 'init'
}
},
init: function () {
let me = this;
myfunction();
},
myfunction: function () {
//do stuff
}
}
如何调用 myfunction()?
最佳答案
当您将 mixin 包含到组件中时,mixin 提供的所有功能都将包含到组件本身。 因此,当您拥有对创建的组件的引用时,您无法调用组件本身的函数。
Ext.define('ABC.mixin.MyMixin', {
extend: 'Ext.Mixin',
myfunction: function () {
//do stuff
}
});
Ext.define('ABC.view.MyView', {
mixins: ['ABC.mixin.MyMixin'],
// ...other config stuff
});
let myView = Ext.create('ABC.view.MyView'); // concreate Object of the class ABC.view.MyView
myView.myfunction(); // we can call the function of the mixin on the Object directly.
有关详细信息,请参阅 ExtJs documentation
关于javascript - ExtJS 调用另一个组件的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51761054/