我正在尝试逐步将我的项目转换为飞镖。我已将独立库转换为 Dart,并且在我的项目中使用 Dart 编译的 javascript。感谢您对我的其他问题的帮助。我可以调用 Dart 编译的 javascript 函数。现在我面临另一个难题。如果我的 Dart 函数需要回调,我如何将 Javascript 函数传递给 Dart 生成的 javascript 函数?
我想做的是从 Javascript 注册一个 Dart 事件处理程序,例如:
在我的 Dart 中,我有事件总线,dart 对象可以通过以下方式注册事件处理程序:
bus.on('eventName', callbackFunc);
Dart 对象通过以下方式触发事件:
bus.fire('eventName', data);
我通过以下方式将总线暴露给 Javascript 世界:
js.context['registerEvent'] = bus.on;
在 Javascript 中,我想调用
registerEvent('someEvent', function() { console.log('JS callback' });
注册一个事件处理程序,当 Dart 对象触发事件时,将调用 JS 回调。