typescript - VSCode - 设置带有 Deno(后端)文件夹和 Vite(前端)文件夹的 monorepo

标签 typescript visual-studio-code vite deno

我正在尝试使用使用 Deno 的 back(或“api”)文件夹和一个 front(或“webapp”)文件夹来配置 monorepo一个 React 应用程序(或者实际上是任何使用 Vite 配置的框架)。

所以这个项目实际上混合了 Deno 和 Node(如果这是一个坏主意,你现在就可以阻止我)。 我可能还会考虑在整个项目中使用 Deno Linter 和 Formatter。

文件结构看起来像这样:

my-monorepo/
├── .vscode/
│   └── settings.json
├── back/
│   └── index.ts
├── front/
│   ├── src/
│   │   └── index.tsx
│   ├── index.html
│   └── vite.config.ts
├── .gitignore
├── deno.jsonc
└── package.json

它几乎可以工作,但我现在遇到的主要问题是 VSCode Deno 扩展。

是否可以在 front/ 文件夹中使用内置的 VSCode JS 和 TS 语言服务,并在 back/文件夹中使用 Deno 语言服务器(deno lsp) 文件夹? 否则 TS 会生气(例如 back/ 中的导入必须包含 .ts 但在字体中它们大多数不包含 .ts)。

最后,如果我能让它工作,我希望任何克隆存储库的人都能轻松使用它。

Alo,这是供引用的 .vscode/settings.json 文件:

{
  "deno.enable": true,
  "deno.config": "./deno.jsonc",

  "[typescript]": {
    "editor.defaultFormatter": "denoland.vscode-deno",
  }
}

最佳答案

您将遇到此设置的问题。请参阅这些相关的 GitHub 问题 1 , 2 .

相反,在一个工作区(您的后端)中使用 Deno 的 LSP,在另一个工作区(您的前端)中使用普通 TS LSP,并在每个工作区中使用专用的 VS Code 设置文件。 (如果您使用 Deno 执行 repo 顶级脚本编写,那么也可以复制顶级的 VS Code 配置。)

然后,为 monorepo 中的每个工作区打开一个单独的 VS Code 窗口,以便它们可以使用自己的 LSP 而不会发生冲突。

关于typescript - VSCode - 设置带有 Deno(后端)文件夹和 Vite(前端)文件夹的 monorepo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71038134/

相关文章:

javascript - 定位对象内的数组 - Angular 2 中的 Observables

node.js - 使用 Visual Studio Code 调试 Node js

javascript - 无法访问 Vue3JS Vite 项目中的流程变量

javascript - Vitest - FormData 不是测试单元的构造函数问题

typescript - VS代码: How to enable links in a webpage in the Webview

android - ionic2 流媒体不工作

javascript - typescript 提示 promise.then

c++ - 将参数传递给 C++ 程序以在 VSCode 中进行调试

visual-studio-code - 如何使用旧版本的 Visual Studio Code?

reactjs - 在 React(ThreeJS) 中使用 GLTFLoader 时应定义优化信息的 Vite 错误