blob: 355074a38c3b2e61569d5bf65a94848b4bfbc8c4 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
const channel = new MessageChannel();
function onNewCartItem(cb: (m: any) => void) {
let onMessage = (ev: MessageEvent) => {
cb(ev.data);
};
channel.port2.addEventListener('message', onMessage);
channel.port2.start();
return () => channel.port2.removeEventListener('message', onMessage);
}
function addToCart(item: any) {
channel.port1.postMessage(item);
}
export {
onNewCartItem,
addToCart
}
|