Я не могу использовать ответную загрузку в моем приложении.Каждый раз, когда я пытаюсь импортировать и визуализировать компонент (из начальной загрузки), возникает это исключение:
Uncaught Invariant Violation: Invalid hook call.Хуки могут быть вызваны только внутри тела функционального компонента.Это может произойти по одной из следующих причин
Это то, что я сделал:
- Установлено реагировать-bootstrap и bootstrap с
npm install react-bootstrap bootstrap
- Добавлено Import-Statement в компоненте реакции
import Button from 'react-bootstrap/Button';
- Добавлена кнопка внутри return () функции render ():
<Button variant="primary">Primary</Button>
Я не использую хуки в своем приложении реакции. веб-приложение работает нормально без начальной загрузки!
Почему выбрасывается это исключение?Это мой файл package.json , если это поможет:
{
"name": "sautercopyplanraum",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"wbp": "webpack"
},
"keywords": [],
"author": "Tim Gerhard",
"license": "ISC",
"devDependencies": {
"@babel/core": "^7.4.5",
"@babel/plugin-proposal-class-properties": "^7.4.4",
"@babel/plugin-transform-runtime": "^7.4.4",
"@babel/preset-env": "^7.4.5",
"@babel/preset-react": "^7.0.0",
"aspnet-webpack": "^3.0.0",
"babel-loader": "^8.0.6",
"css-loader": "^3.0.0",
"react": "^16.8.6",
"react-dom": "^16.8.6",
"style-loader": "^0.23.1",
"webpack": "^4.35.0",
"webpack-cli": "^3.3.5",
"webpack-dev-middleware": "^3.7.0",
"webpack-hot-middleware": "^2.25.0"
},
"dependencies": {
"@babel/runtime": "^7.4.5",
"bootstrap": "^4.3.1",
"core-js": "^3.1.4",
"moment": "^2.24.0",
"react-bootstrap": "^1.0.0-beta.9",
"react-contextmenu": "^2.11.0",
"react-hint": "^3.2.0",
"react-moment": "^0.9.2",
"react-router-dom": "^5.0.1",
"react-select": "^3.0.4",
"sweetalert2": "^8.13.0",
"sweetalert2-react-content": "^1.1.0"
}
}
И это будет мой файл webpack.config.js :
const path = require('path');
module.exports = {
mode: 'development',
entry: { 'main': ['core-js/fn/promise', 'core-js/stable/object/assign', './wwwroot/src/app.js'] },
output: {
path: path.resolve(__dirname, 'wwwroot/dist'),
filename: 'bundle.js',
publicPath: 'dist/'
},
module: {
rules: [
{
test: /\.(js|jsx)$/,
exclude: /(node_modules)/,
resolve: {
extensions: [".js", ".jsx"]
},
use: {
loader: 'babel-loader',
options: {
presets: ['@babel/preset-react', '@babel/preset-env', {
'plugins': ['@babel/plugin-proposal-class-properties',
'@babel/plugin-transform-runtime']
}]
}
}
},
{
test: /\.css$/,
use: [
{ loader: "style-loader" },
{ loader: "css-loader" }
]
}
]
}
};