library angular2.examples.message_broker.index; import "package:angular2/src/web-workers/ui/application.dart" show spawnWebWorker; import "package:angular2/src/facade/async.dart"; import "dart:html"; main() { var VALUE = 5; spawnWebWorker(Uri.parse("background_index.dart")).then((bus) { querySelector("#send_echo").addEventListener("click", (e) { var val = (querySelector("#echo_input") as InputElement).value; ObservableWrapper.callNext(bus.to("echo"), val); }); ObservableWrapper.subscribe(bus.from("echo"), (message) { querySelector("#echo_result") .appendHtml("${message}"); }); ObservableWrapper.subscribe(bus.from("result"), (message) { querySelector("#ui_result") .appendHtml("${message}"); }); ObservableWrapper.subscribe(bus.from("test"), (Map message) { ObservableWrapper.callNext(bus.to("test"), {'id': message['id'], 'type': "result", 'value': VALUE}); }); }); }