Nativescript postMessage()的工作线程问题

Nativescript postMessage()的工作线程问题,nativescript,Nativescript,在工作线程中,当我调用postMessage()将消息发送回主线程时,它不允许单个参数签名 e、 g.邮递信息({success:true}) VisualCode显示所需的postMessage签名(任何、字符串、传输?) 我有require(‘globals’);在辅助文件的顶部 这就是我到目前为止所做的: require('globals');//必须在新线程上引导tns模块 onmessage=函数(msg) { var请求=msg.data; var data=request.dat

在工作线程中,当我调用postMessage()将消息发送回主线程时,它不允许单个参数签名

e、 g.邮递信息({success:true})

VisualCode显示所需的postMessage签名(任何、字符串、传输?)

我有require(‘globals’);在辅助文件的顶部

这就是我到目前为止所做的:

require('globals');//必须在新线程上引导tns模块
onmessage=函数(msg)
{
var请求=msg.data;
var data=request.data;
var result=“确定”;
var消息:any=result!==未定义?{success:true,src:result}:{};

postMessage(message);//需要注意的是,您看到的错误很可能是使用TypeScript导致的编译错误

自当前版本起,nativescript workers实现应仅接受一个参数


添加对
node\u modules/tns\u core\u modules/webworker.es2016.d.ts的引用,因为它们包含正确的定义

需要注意的是,您看到的错误很可能是使用TypeScript导致的编译错误

自当前版本起,nativescript workers实现应仅接受一个参数


添加对
node\u modules/tns\u core\u modules/webworker.es2016.d.ts的引用,因为它们包含正确的定义

这是一个小小的解决办法,但是我在我的应用程序中通过在worker文件的beging中添加重新声明的函数签名来修复它,如下所示:

declare function postMessage(message: any);

希望有帮助。

这是一个小小的解决办法,但是我在我的应用程序中通过在worker文件的beging中添加重新声明的函数签名来修复它,如下所示:

declare function postMessage(message: any);

希望有帮助。

您使用的是什么工作线程实现?NativeScript的什么版本?NS 2.4.1和TS 1.8.10您使用的是什么工作线程实现?NativeScript的什么版本?NS 2.4.1和TS 1.8.10Oops..说得太快了。我添加了对references.d.TS的引用,可视化代码/TS错误消失了。但是当我尝试编译时我收到重复的工作错误。我正在使用TS 1.8.10。我是否需要使用TS 2.0+。这些es2016定义似乎需要这样做。冲突似乎与“node_模块/typescript/lib/lib.d.TS(16138,11)”有关:error TS2300:Duplicate identifier'Worker.'Oops..说得太快了。我添加了对references.d.ts的引用,可视化代码/ts错误消失了。但是当我尝试编译时,我得到了重复的Worker错误。我使用的是ts 1.8.10。我需要使用ts 2.0+吗?这些es2016定义似乎需要这样做。冲突似乎与“节点\模块/类型”有关script/lib/lib.d.ts(16138,11):错误TS2300:重复标识符'Worker'