问题标签 [turborepo]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 直接在通用 React 组件库中将 SVG 转换为 JSX 的最佳方法
我试图找出在我的 React 通用组件库中直接将 SVG 图像作为 JSX 组件导入的最佳方法。“通用组件库”是指一个单独的包,其中包含我组织内的各种 Web 应用程序可以使用的通用组件。
这是一个使用名为 Turborepo 的库的 web 应用程序 (apps/web) 和通用 ui 库 (packages/my-core) 的 monorepo 设置示例:https ://github.com/MahdiTa97/turborepo-boilerplate /blob/main/package.json
通常在 NextJS 或 Create React App 项目中,我会利用 SVGR webpack 插件并编写如下导入语句:
import { ReactComponent as ExampleIcon } from 'common-ui-library/images/icon.svg'
并且会像使用任何普通的 React 组件一样使用 ExampleIcon。
在通用 UI 库的上下文中,情况有些不同。Webpack 没有在库中使用,据我所知,这个“通用 ui 库”中包含的所有内容都需要是一个合适的模块。
我想做的最后一件事是设置一个单独的“图像”包,它使用 Rollup(或类似的)和某种在我开发时运行的观察器。
我对这种特殊设置如何让我无需为通用 ui 库运行单独的观察程序即可进行开发感到非常满意。
reactjs - Turborepo - 使用另一个库的库 - 您可能需要适当的加载器来处理此文件类型
复制应用:https ://github.com/uriklar/turborepo-lib-dep-lib-repro
我正在使用 Turborepo 的基本示例(nextjs app + ui 库)
我想添加一个额外的 ui 库并让我的 ui 库依赖它。
我在anotherui
packages 目录中创建了库并将其添加为如下依赖项ui
:
当我尝试构建web
应用程序(使用Button
from ui
)时,我收到以下错误:
我的问题是:
是否可以让一个库依赖于同一个 monorepo 中的另一个库?
谢谢!
node.js - tsconfig.json 扩展不适用于 Mono 存储库
我使用 turborepo 和 yarn 来制作 Mono 存储库,
我有一个工作区包,它包含文件夹 tsconfig,包名为@packages/tsconfig
和主文件 tsconfig.json 另外,我还有另一个名为 apps 的工作区,其中包含文件夹 bot tsconfig.json
:但它不起作用
更多代码
apps/bot/package.json
apps/bot/tsconfig.json
packages/tsconfig/package.json
怎么了?
create-react-app - 在 npm 工作区中使用 create-react-app 找不到模块“postcss-preset-env”错误
我正在尝试create-react-app
在 Turborepo monorepo 中添加一个应用程序。
问题是,如果我npm install
从 monorepo 的根目录运行,然后尝试通过运行来启动 CRA 应用程序npm run dev
,我会在编译时收到以下错误:
加载 PostCSS“postcss-preset-env”插件失败:找不到模块“postcss-preset-env”
我注意到,如果我npm install
从 CRA 应用程序文件夹 ( /apps/my-app
) 中运行,然后npm run dev
从 monorepo 的根目录运行,它运行得很好。
我还注意到,根据我运行npm install
的位置,内容/apps/my-app/node_modules
会有所不同,但我认为这是预期的行为。
如果我正确理解npm workspaces docs,您应该始终npm install
从 monorepo 的根目录运行。
知道我在这里缺少什么吗?
我正在使用 npm 8.3.1。
这是一个带有示例的公共回购:https ://github.com/oncet/turborepo-cra
javascript - 在 npm run build 上的 Docker 中出现错误“错误哈希文件”
我正在使用看起来像这样的基本 Dockerfile:
我的项目是由 API 和前端包组成的 monorepo(使用 turborepo 制作)。当我使用 docker compose 启动图像时,它在步骤npm run build上失败,并出现以下错误:
在本地(Windows)构建它可以完美运行,没有任何错误。
有任何想法吗?