【问题标题】:How to configure VS Code to understand nested package.jsons?如何配置 VSCode 以理解嵌套的 package.json?
【发布时间】:2020-01-10 00:35:05
【问题描述】:

我有一个大型 React Native 应用程序,它使用嵌套的 package.json 文件来保持包顶部的依赖项导入干净。

例如,我的库文件夹有一个 package.json,其中包含以下内容:

{
  "name": "libraries",
  "version": "0.0.1"
}

这意味着我可以像这样导入工具:

import { toSnakeCase } from 'libraries/string/transform';

替代方案是

import { toSnakeCase } from '../../../libraries/string/transform';

这使得代码更易于编写和推理。

开箱即用的 VSCode 不知道如何处理这些导入,因此缺少很多功能。

有谁知道如何解决这个问题?

谢谢

【问题讨论】:

    标签: react-native visual-studio-code vscode-settings package.json


    【解决方案1】:

    我找到了答案! 假设您正在使用 Typescript,您的项目根目录中应该有一个 tsconfig.json

    您需要将以下密钥添加到tsconfig.json

    "compilerOptions": {
      "baseUrl": "./src",
      "paths": {
        "constants": ["constants/*"],
        "forms": ["forms/*"],
        "libraries": ["libraries/*"]
      }
    }
    

    baseUrl 本质上是源代码的根。 paths 是一个详细说明将键映射到何处的对象。

    来源:https://netbasal.com/sexier-imports-in-typescript-e3c645bdd3c6

    【讨论】:

      【解决方案2】:

      你可以使用lerna之类的东西,它可以在一个文件夹中同时管理多个包。

      根据文档,您的 repo 将变成这样:

      my-lerna-repo/
        package.json
        packages/
          package-1/
            package.json
          package-2/
            package.json
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-06-09
        • 2015-10-11
        • 2021-06-18
        • 2011-12-24
        • 1970-01-01
        • 2020-05-29
        • 1970-01-01
        相关资源
        最近更新 更多