我正在尝试将我的React项目构建为一个库。
我正在使用:
"react": "^16.13.0",
"react-dom": "^16.13.0"
我有一个useState
的简单组件:
const renderMe = () => {
const [value, setValue] = React.useState(0);
return (
<button onClick={() => setValue(value + 1)}>
{value}
</button>
)
}
Webpack:
const path = require('path');
const styleLoaders = require('./scripts/style-loaders');
module.exports = {
mode: 'production',
entry: './src/index.ts',
output: {
path: path.resolve('dist'),
filename: 'index.js',
library: '',
libraryTarget: 'commonjs'
},
resolve: {
extensions: ['.ts', '.tsx', '.js', '.jsx']
},
module: {
rules: [
{
test: /\.(ts|tsx)$/,
exclude: /\.stories\.(ts|tsx)$/,
loader: 'ts-loader'
},
...styleLoaders
]
}
}
构建很好,但是在安装了第二个项目(由create-react-app
创建)之后,出现了错误:
错误:最小化React错误#321;请访问https://reactjs.org/docs/error-decoder.html?invariant=321获取完整的消息,或使用非最小化的dev环境获取完整的错误和其他有用的警告。
不使用钩子,一切都很好。.仅在使用钩子时,才会出现此错误。
出什么问题了,我该如何解决?
谢谢。