加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

reactjs – 如何在使用webpack发布NPM模块(React组件)时正确使用

发布时间:2020-12-15 09:34:13 所属栏目:百科 来源:网络整理
导读:我想发布依赖于反应的模块.我想在我的应用程序项目中使用此模块,该模块也依赖于react.我为webpack提供了以下模块配置: module.exports = { //...... externals: { 'react': 'react' },output: { library: 'my-module',libraryTarget: 'umd' },resolve: { ex
我想发布依赖于反应的模块.我想在我的应用程序项目中使用此模块,该模块也依赖于react.我为webpack提供了以下模块配置:

module.exports = {
  //......
  externals: {
    'react': 'react'
  },output: {
    library: 'my-module',libraryTarget: 'umd'
  },resolve: {
    extensions: ['','.js'],fallback: [path.join(__dirname,'node_modules')]
  },resolveLoader: {
    fallback: [path.join(__dirname,'node_modules')]
  }
};

package.json作为依赖项和peerDependency做出反应,并以lib / index.js作为入口点,因此我将库构建为lib / index.js.

然后我从模块目录运行npm link,从app目录运行npm link my-module.但是,它仍然会加载两个不同版本的React,从而导致问题.如何使我的模块使用与应用程序相同的反应?

我阅读了有关peerDepenencies和npm链接的链接:https://webpack.github.io/docs/troubleshooting.html#npm-linked-modules-doesn-t-find-their-dependencies

但正如您所看到的,我已将回退添加到配置中(不清楚哪个存储库,因此我将其添加到两个存储库中).我在这做错了什么?

解决方法

我的错误是忘记在安装时构建库的模块中添加“prepublish”脚本.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读