【发布时间】:2020-05-20 00:47:21
【问题描述】:
我正在创建一个带有 React 组件的 NPM 包,这些组件由另一家公司制造。一些组件是纯 UI 组件(想想 UI/Container 模式),其中一些与 redux 耦合。
我希望这个包易于被不同的开发人员使用,他们可以将组件从 NPM 模块加载到他们的项目中。由于某些组件依赖于 redux,我不知道在我创建的包中包含什么。
你有什么建议,你会怎么做?
【问题讨论】:
-
我认为一般来说,如果您希望其他开发人员在他们的项目中重用您的 UI 组件,您的组件不应该包含 redux。只需使用常规组件状态。如果你不能没有 redux,你的模块可以导出 reducer 和 action 以及使用它们的组件,“连接”它意味着导入它们并组合到应用程序中。我想不出一种方法让您在安装时自动执行此操作,而无需编写自己的插件系统并使应用程序符合该要求。不确定这究竟会带来什么。 github.com/markerikson/redux-ecosystem-links
标签: javascript reactjs npm redux package