告诉 VSCode 该文件是一个 Web Worker

Get*_*awn 5 javascript visual-studio-code

我有一个网络工作者,其中包含以下两行:

// Doesn't think importScripts exists
self.importScripts('/myScript.js')

// Thinks that postMessage is missing 1-2 extra arguments
self.postMessage(imgdata)
Run Code Online (Sandbox Code Playgroud)

该代码工作正常,但编辑器认为这两个项目属于该Window对象,因此会引发错误。

有没有办法对此进行 typedoc 或者我可以做其他事情,以便它知道该文件是网络工作者?

hth*_*tho 3

这个问题很老了,但没有答案。我根据这篇文章https://www.antonmata.me/2017/04/04/web-workers-vscode-intellisense.html和文档https://code.visualstudio.com/docs/languages找到了解决方案/jsconfig#_jsconfig-选项

只需在存储工作人员源的目录中创建一个 jsconfig.json 即可。您的项目中可以有多个 jsconfig。最接近的 jsconfig 是应用于您的文件的配置。

它基本上利用了“compilerOptions”中未记录的“lib”选项。当您编辑 jsconfig.json 时,IntelliSense 会建议这样做。

jsconfig.json

{
    "compilerOptions": {
        "lib": [
            "webworker"
        ]
    }
}
Run Code Online (Sandbox Code Playgroud)