我試圖將我的項目一步一步地轉換爲飛鏢。我已經將一個獨立的庫轉換爲Dart,並在我的項目中使用了Dart編譯的JavaScript。感謝您在my other question的幫助。我可以調用Dart編譯的javascript函數。現在我面臨另一個難題。如果我的Dart函數需要回調函數,那麼如何將JavaScript函數傳遞給Dart生成的javascript函數?當從javascript調用dart complied Javascript時,如何將回調函數傳入到dart編譯的Javascript中?
我所試圖做的是從Javascript註冊飛鏢事件處理程序,例如:
在我的飛鏢,我有事件總線,鏢對象可以將事件處理程序來註冊通過:
bus.on('eventName', callbackFunc);
和飛鏢對象通過觸發一個事件:
bus.fire('evnetName', data);
我揭露總線爲Javascript的世界,通過:
js.context['registerEvent'] = bus.on;
在Javascript中,我想打電話給
registerEvent('someEvent', function() { console.log('JS callback' });
註冊一個事件處理程序,當飛鏢對象觸發的事件時,JS回調將被調用。
param.apply()不工作。 未捕獲的NoSuchMethodError:不能調用 「#」 「申請$ 0」(對象#有沒有方法 '申請$ 0') –
kzhdev
嘗試'param.apply([])' –
這工作。謝謝你的幫助。 – kzhdev