本文整理汇总了TypeScript中worker-rpc.RpcProvider.registerRpcHandler方法的典型用法代码示例。如果您正苦于以下问题:TypeScript RpcProvider.registerRpcHandler方法的具体用法?TypeScript RpcProvider.registerRpcHandler怎么用?TypeScript RpcProvider.registerRpcHandler使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类worker-rpc.RpcProvider
的用法示例。
在下文中一共展示了RpcProvider.registerRpcHandler方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: RpcProvider
import { RpcProvider } from "worker-rpc";
import * as jsonMap from "json-source-map";
const rpcProvider = new RpcProvider((message: any, transfer: any) => postMessage(message, transfer));
onmessage = e => rpcProvider.dispatch(e.data);
rpcProvider.registerRpcHandler("generateSourceMap", ({ obj }: any) => jsonMap.stringify(obj, null, 2));
示例2: postMessage
} else {
postMessage(message, transfer);
}
if (portPending) {
port = portPending;
port.onmessage = (e: MessageEvent) => rpcProvider.dispatch(e.data);
}
portPending = null;
}
rpcProvider = new RpcProvider(send);
rpcProvider.error.addHandler(e => {
console.log(e ? e.message : 'unknown rpc error');
});
onmessage = (e: MessageEvent) => port || rpcProvider.dispatch(e.data);
rpcProvider.registerRpcHandler('/use-port', (newPort: MessagePort) => {
if (!(port || portPending)) {
portPending = newPort;
return Promise.resolve();
} else {
return Promise.reject('RPC already switched to message port');
}
});
export function getRpc(): RpcProviderInterface {
return rpcProvider;
}