【问题标题】:requiring vscode in a vscode extension在 vscode 扩展中需要 vscode
【发布时间】:2020-10-15 13:21:11
【问题描述】:

我正在使用 Electron 制作一个应该可扩展的应用程序。作为实现这一点的框架,我一直在深入研究 VSCode 扩展 API。我想我现在已经弄清楚了,除了一件小事。要使用 API,扩展应首先要求 vscode:const vscode = require('vscode')

但是,我在我的 hello-world 扩展的 node_modules 或 npm 中找不到 this 引用的模块。 VSCode 是如何为扩展提供 API 模块的?

任何见解都将受到高度赞赏!

【问题讨论】:

    标签: electron vscode-extensions


    【解决方案1】:

    VS Code 拦截扩展对require 的调用。如果扩展调用require('vscode'),VS Code 会返回 api 对象:https://github.com/microsoft/vscode/blob/8a7961905611212bf6da6ba9ba6e5bf1f48d2943/src/vs/workbench/api/common/extHostRequireInterceptor.ts#L85

    这意味着磁盘上或node_modules 下没有对应的vscode 文件(node_modules 下仅安装了类型)

    【讨论】:

    • 这就解释了:)。谢谢!
    猜你喜欢
    • 2019-08-26
    • 1970-01-01
    • 1970-01-01
    • 2016-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-17
    相关资源
    最近更新 更多