gpt4 book ai didi

create-react-app - 如何使用 Yarn 工作区在 CRA 中导入通用模块?

转载 作者:行者123 更新时间:2023-12-01 13:14:27 25 4
gpt4 key购买 nike

我有一个使用 Yarn 工作区的 monorepo。我有一个基于 create-react-app 的包,它应该从一个公共(public)模块(repo 中的兄弟包)导入。

这个通用包不包含任何 React 组件。只是业务逻辑。它的源代码是从 Typescript 转译而来的。通用包可以很好地与我在其他包中的后端代码一起使用。

开箱即用,这不适用于 CRA,并给我一个错误:

./src/App.tsx Module not found: Can't resolve '@gemini/common'



我需要做什么来配置 CRA 以查找模块?

我找到了 this open issue关于 CRA monorepo 支持,但我不确定它是如何关联的,并且那里有很多信息。

最佳答案

让我们假设您的结构类似于

|- monorepo
|- package.json
|- packages
|- cra
| |- package.json
|
|- common
|- package.json
  • 确保工作空间已注册
  • // monorepo/packages.json

    {
    "workspaces": {
    "packages": [
    "packages/*"
    ]
    },
    }
  • Gemini 包名需要匹配到所需的路径
  • // monorepo/packages/gemini/package.json

    {
    "name": "@gemini/common"
    }
  • 最后,将其用作 cra
  • 中的依赖项
    // monorepo/packages/cra/package.json

    {
    "dependencies": {
    "@gemini/common": "*"
    }
    }
  • 运行 yarn在 cra 中链接双子座
  • 关于create-react-app - 如何使用 Yarn 工作区在 CRA 中导入通用模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56838735/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com