在 React 应用程序中导入 'vscode-languageserver' 时出错

Error importing 'vscode-languageserver' in a React app

我正在尝试使用 monaco-editorvscode-languageserver 创建一个游乐场来展示我的语言服务器的功能。

然而,当我尝试从如下示例的页面导入 'vscode-languageserver' 时

//# src/pages/test.js 
const { TextDocument } =  require("vscode-languageserver"); 
console.log(TextDocument.create('a' , 'b' , 'c' , 'd' )); 

https://github.com/zkrami/docusaurus-test/blob/master/src/pages/test.js

我收到以下错误:

Module not found: Can't resolve 'child_process' in 'C:\Users\Rami\git\my-website\node_modules\vscode-languageserver\lib'./node_modules/vscode-languageserver/lib/files.js

Module not found: Can't resolve 'fs' in 'C:\Users\Rami\git\my-website\node_modules\vscode-languageserver\lib'./node_modules/vscode-jsonrpc/lib/pipeSupport.js

请注意,如果我在 docusaurus.config.js 文件中导入模块,它会完美运行。

我做了一个简单的例子,你可以试试: https://github.com/zkrami/docusaurus-test/

规格:

yarn 1.22.4 
node v10.15.3
OS: Windows
@docusaurus/core: "^2.0.0-alpha.54"

fs是一个Node模块,需要Node运行时,不能在浏览器中使用。

这不是 Docusaurus 问题,您将无法在任何客户端 React 应用程序中使用它。

我最终使用了满足我要求的 vscode-languageserver-protocol 包。