[英]Call ExtJS functions from action script
我想知道是否可以從動作腳本中調用ExtJS函數?
例如,我們在ExtJS上編寫了以下代碼:
Ext.define('utils', {
singleton : true,
alert : function (message) {
Ext.MessageBox.alert(Ext.locale.error, message);
}
});
可以從動作腳本中調用嗎? 我知道可以使用ExternalInterface()
調用普通的java腳本函數,但它不適合我。
在此先感謝您的幫助!
我不知道Extjs,但是文檔聲明Application
類設置了一個帶有應用程序名稱的全局變量。 如果向該類添加公共方法,則應該能夠使用ExternalInterface
從Flash中調用它(請參閱docs ),這是在Flash和JavaScript之間進行通信的標准方法。
ExtJS的:
Ext.application({
name: 'MyApp',
launch: function() {
Ext.create('Ext.container.Viewport', {
items: {
html: 'My App'
}
});
},
// Public method to receive external interface calls from Flash
alert: function(message) {
// Call alert method on utils
}
});
動作腳本:
ExternalInterface.call('myApp.alert', 'Hello JavaScript. Love from Flash');
我不太詳細地了解ExternalInterface方法,但是使用Ext.define只需使用給定的方法定義一個javascript對象(因為它是一個單例)。 所以在javascript中你可以簡單地打電話
utils.alert('Hello World');
所以不應該使用以下簡單的調用
ExternalInterface.call('utils.alert', 'Hello World');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.