Javascript/Webpack/React:在库中使用引用失败
我有一个有趣的问题,我已经减少到最小的用例,我可以。我已经为此创建了一个可复制的回购协议,所以你不必相信我的话: 想法是这样的。回购协议中有两个独立的项目,Javascript/Webpack/React:在库中使用引用失败,javascript,reactjs,webpack,Javascript,Reactjs,Webpack,我有一个有趣的问题,我已经减少到最小的用例,我可以。我已经为此创建了一个可复制的回购协议,所以你不必相信我的话: 想法是这样的。回购协议中有两个独立的项目,app和lib。在库(/lib)中,我正在创建一个React组件,希望其他项目可以使用它。在图书馆里工作很好。然后,当我将该库导入到另一个项目中(此处,/app)时,它基本上可以正常工作,但我得到了此处详述的“仅ReactOwner可能有引用”警告: 显然,他们为这本书写了一整页已经够普遍的了 从该页面中,它告诉我,我正在渲染方法之外创建引用
app
和lib
。在库(/lib
)中,我正在创建一个React组件,希望其他项目可以使用它。在图书馆里工作很好。然后,当我将该库导入到另一个项目中(此处,/app
)时,它基本上可以正常工作,但我得到了此处详述的“仅ReactOwner可能有引用”警告:
显然,他们为这本书写了一整页已经够普遍的了
从该页面中,它告诉我,我正在渲染方法之外创建引用(我选中了,但没有。而且,直接运行引用时,引用可以工作),或者:我正在导入两个版本的React
当只有库依赖React时,如何导入它的两个版本?网页包是否在库中打包,然后在应用程序中下载并重新打包?在这种情况下,我应该如何创建一个可重用的库
谢谢你的洞察力 我只是对我的可重用性做了类似的事情。看见我没有使用webpack,构建发生在使用库的项目中。从my package.json
“脚本”:{
“dist”:“eslint src&&babel src--out dir dist”
},
“依赖项”:{
“lodash”:“最新”,
“镭”:“最新”,
“反应”:“最新”,
“react dom”:“最新”,
“屏幕完整”:“最新”
},
“依赖性”:{
“babel cli”:“最新”,
“巴别塔核心”:“最新”,
“babel eslint”:“最新”,
“巴别塔加载器”:“最新”,
“babel-preset-es2015”:“最新”,
“巴别塔预设反应”:“最新”,
“babel-preset-stage-0”:“最新”,
“eslint”:“最新”,
“eslint加载程序”:“最新”,
“eslint插件巴别塔”:“最新”,
“eslint插件反应”:“最新”,
“网页包”:“最新”
}
Hmm很有趣。如何从正在使用它的应用程序调用库中的组件?从“jms react components”导入{JButton};