Visual studio code 如何在vscode扩展之间通信

Visual studio code 如何在vscode扩展之间通信,visual-studio-code,vscode-extensions,Visual Studio Code,Vscode Extensions,我想知道如何在VS代码扩展之间进行通信,例如一个扩展将发布,其他扩展将订阅。是的,有几种方法: 使用。一个扩展可以调用另一个扩展的命令 使用扩展API。为此,Extension1从activate方法返回其api。然后Extension2可以使用extensions.extensions.getExtension('extension1.id')获取它,并使用该对象调用API 在这两种情况下,extension2都应该声明它依赖于extension1,在其包中使用extensionDepen

我想知道如何在VS代码扩展之间进行通信,例如一个扩展将发布,其他扩展将订阅。

是的,有几种方法:

  • 使用。一个扩展可以调用另一个扩展的命令

  • 使用扩展API。为此,Extension1从
    activate
    方法返回其api。然后Extension2可以使用
    extensions.extensions.getExtension('extension1.id')
    获取它,并使用该对象调用API


在这两种情况下,extension2都应该声明它依赖于extension1,在其
包中使用
extensionDependencies
。如果需要向多个扩展广播事件,请使用API。没有内置的
sendNotification
导出api是activate函数的返回。这本书中有一个例子