在项目之间共享 React 组件的最简单方法是啥? [关闭]

Posted

技术标签:

【中文标题】在项目之间共享 React 组件的最简单方法是啥? [关闭]【英文标题】:What is the simplest way to share react components between projects? [closed]在项目之间共享 React 组件的最简单方法是什么? [关闭] 【发布时间】:2019-03-28 02:49:50 【问题描述】:

我知道我可以上传到 npm 并在项目之间拉取模块。有没有类似的方式来做不是面向公众的代码(对整个世界都不可见)?

这两个项目都不是明确开源的。

【问题讨论】:

【参考方案1】:

选项 1:您可以使用 npm 并使用私有包,这样它们就不会面向外部。还有一些工件和范围包,它们通常代表公司范围内的项目,可以是公共的或私有的。请参阅https://docs.npmjs.com/private-modules/intro 和https://docs.npmjs.com/misc/scope。

选项 2:本质上,您可以开发具有扁平结构的项目。然后,您可以将各种项目和/或组件导入其他项目或文件夹。这完全取决于您的代码库和配置。但是,使用这种模型,很多时候发布到 npm 是很自然的,因为每个文件夹都可能是自己的项目,有自己的 package.json。

更新:

选项 3:Bit 关注组件的可组合性,从按钮之类的小东西到实际视图和应用程序本身——每个目标都是它自己的包。总体而言,它是一个固执己见但可自定义的框架,可以实现更快的开发、托管依赖项和有组织的代码。

选项 4:RushJS 是由 Microsoft 构建的 monorepo 管理器,它允许不同类型的应用程序和服务灵活地使用底层的 pnpm(与 yarn 和 npm 不同),从而缓解依赖问题引起的问题。

【讨论】:

【参考方案2】:

查看Bit:

Bit 是一个开源 cli 工具,用于跨项目和存储库就隔离组件进行协作。使用 Bit 将设计库或项目中的分立组件分发到独立的可重用包中,并在应用程序中使用它。

【讨论】:

【参考方案3】:

您可以创建共享组件的存储库,然后让您的 Node.js 启动脚本调用 shell 脚本以从该存储库执行 git pull 并将共享组件从该目录移动到您的项目目录。这样,每次您调用 run 'npm start' 时,您都会将最新版本的共享组件加载到您的项目中

【讨论】:

【参考方案4】:

您也可以将它们上传到诸如 Github 之类的私人 git 存储库,然后从那里将它们拉入。

Ryanve 在这里有一个很好的例子:https://***.com/a/28729646/1592783

【讨论】:

以上是关于在项目之间共享 React 组件的最简单方法是啥? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

提供 undetermined-lifespan bool 在线程之间共享的最简单方法是啥?

React 新手:在未链接的组件之间共享状态

管理在不同 Xcode 项目之间共享的源文件的简单方法是啥?

在 React Hooks 中通信组件的简单而正确的方法是啥?

在 Reactstrap 中更改默认字体的最简单方法是啥?

React-native flatlist 在 isLoading 上的组件之间共享道具