質問
このように定義されたコントローラーがあります。
Ext.define('MyApp.controller.TestController', {
extend: 'Ext.app.Controller',
config: {
},
showTest: function() {
alert('aaa');
}
});
showtest()関数を呼び出すにはどうすればよいですか?これを試しました:myapp.controller.testcontroller.showtest();
しかし、これはうまくいきません。これを行う方法は誰でも.. ??私はdivでもオンクリックからその関数を呼び出したいので。何かのようなもの:
<div onclick="call.controller.func(1)">User 1</div>
<div onclick="call.controller.func(2)">User 2</div>
etc.
解決
いいえ、あなたはそれを間違っています。
ビューにボタンがあると仮定します。
Ext.define('MyApp.view.Login', {
extend : 'Ext.form.Panel',
xtype : 'myapp-login',
config : {
items : [
{
xtype : 'fieldset',
name : 'login-fieldset',
title : 'Login credentials',
instructions: 'Fill in your email and password)',
items : [
{
xtype: 'emailfield',
name : 'email',
label: 'Email'
},
{
xtype: 'passwordfield',
name : 'password',
label: 'Password'
}
]
},
{
xtype : 'button',
name : 'Login',
text : 'Login',
ui : 'confirm'
}
]
}
});
あなたのコントローラー内、あなたの内側 control
物体:
control : {
'myapp-login button[ui=confirm]' : {
tap : 'showTest'
}
},
// function showTest
showTest: function() {
alert('aaa');
}
したがって、上記の例では:ユーザーが内部でクリックしたとき xtype
呼び出されました myapp-login
コントローラーが実行されます showTest()
方法。
所属していません StackOverflow