11

我正在尝试创建一个 React-Redux 库,并且我正在尝试使用create-react-app来获取样板代码,但它在构建脚本中包含了一些不相关的内容,例如 appHtml。

有没有办法将弹出的 create-react-app 转换为库 - 特别是我不需要将所有js 文件打包成一个,而是只需通过 babel 传递它们并为每个 React 组件生成单独的文件?

4

4 回答 4

17

我已经设法在不弹出和使用创建反应应用程序的内部依赖项的情况下构建库。我已经用react-scripts@0.9.5. 首先你需要安装babel-cli

npm install --save-dev babel-cli

创建.babelrc包含内容的文件:

{
  "presets": ["react-app"]
}

然后将脚本添加到package.json

"compile": "NODE_ENV=production babel src --out-dir lib --copy-files",

最后运行:

npm run compile

这会将所有源代码编译srclib目录并简单地复制剩余的文件。不要忘记在package.json(例如"main"="lib/index.js")中声明主文件。

但是有一个警告。如果你正在使用不能用 babel 编译的文件(例如 css 或字体),那么你的库的用户需要设置适当的(webpack)加载器。

于 2017-05-11T13:02:59.187 回答
3

编辑以下内容package.json

  1. name
  2. description
  3. scripts
  4. author
  5. license
  6. gitRepository

并做npm publish。它会发布你的图书馆npm

于 2016-09-25T08:25:03.957 回答
2

这是迄今为止我发现的最好的..使用 create-react-app 库https://github.com/Rubbby/create-react-library

于 2017-08-27T23:10:32.433 回答
0

也许您可以使用js-library-boilerplate引导您的项目。我已经用过好几次了,试一试就足够了。它可以用作 vanila js 库或反应库的基础(在引擎盖下使用 CRA)。

要使用它,您需要的是:

  • 克隆回购
  • 进行一些更改:


  • 编辑许可证文件

  • 编辑 package.json 信息(这些将用于生成构建文件的标头)
  • 编辑库:“MyLibrary”,在 ./config/webpack.config.js 中使用库的导出名称
  • 编辑 ./bin/postinstall (如果您想在安装包时显示消息)

...你准备好了。此外,所有配置都是打开的,因此您可以根据需要进行调整。祝你好运!

于 2020-01-23T11:28:38.353 回答