deno/cli/tests/026_workers.ts
Bartek Iwańczuk 161adfc51b
workers: proper TS libs, more spec-compliant APIs (#3812)
* split lib.deno_main.d.ts into:
  - lib.deno.shared_globals.d.ts
  - lib.deno.window.d.ts
  - lib.deno.worker.d.ts
* remove no longer used libs:
  - lib.deno_main.d.ts
  - lib.deno_worker.d.ts
* change module loading to use proper TS library for compilation
* align to Worker API spec:
  - Worker.terminate()
  - self.close()
  - self.name
2020-01-29 18:54:23 +01:00

27 lines
585 B
TypeScript

const jsWorker = new Worker("./subdir/test_worker.js", {
type: "module",
name: "jsWorker"
});
const tsWorker = new Worker("./subdir/test_worker.ts", {
type: "module",
name: "tsWorker"
});
tsWorker.onmessage = (e): void => {
console.log("Received ts: " + e.data);
};
jsWorker.onmessage = (e): void => {
console.log("Received js: " + e.data);
tsWorker.postMessage("Hello World");
};
jsWorker.onerror = (e: Event): void => {
e.preventDefault();
console.log("called onerror in script");
jsWorker.postMessage("Hello World");
};
jsWorker.postMessage("Hello World");