Я застрял с этой странной проблемой. Мое приложение отлично работает в Chrome, Firefox, Edge, IE11. Но есть некоторые проблемы в Safari, я даже не вижу точную ошибку в консоли. сообщение в консоли является общим и просит меня не увеличивать / уменьшать сценарии, чтобы увидеть точную ошибку.
Ошибка:
* сообщение: "Minified React error # 130; посетите http://facebook.github.io/react/docs/error-decoder.html?invariant=130&args[]=undefined&args[]= для полного сообщения или используйте неминифицированную среду dev для получения полных ошибок и дополнительных полезных предупреждений."
название: "Инвариантное нарушение" *
Точная проблема: если я прокомментирую плагин JSON.stringify, приложение даже не откроется. Консоль выдает следующую ошибку.
"Ошибка типа: 'undefined' не является функцией (вычисляет '(0, d.render)')"
Плагин Uglify не оказывает влияния, если я прокомментирую это, приложение все еще работает, не умаляя мой JS.
Ниже приведен мой файл веб-пакета.
const path = require('path');
const webpack = require('webpack');
const ExtractTextPlugin = require('extract-text-webpack-plugin');
const extractCSS = new ExtractTextPlugin('allstyles.css');
module.exports = {
entry: {
'common': ['react-datepicker', 'babel-polyfill', 'react', 'react-dom', 'react-redux', 'redux', 'isomorphic-fetch', 'es6-promise'],
'home': './ClientApp/pages/Home.js',
'header': './ClientApp/components/shared/Header.js',
'footer': './ClientApp/components/shared/Footer.js',
'game': './ClientApp/pages/Game.js',
'gamesbsport': './ClientApp/pages/GameSBSport.js',
'gamesbesport': './ClientApp/pages/GameSBESport.js',
'gamegbkeno': './ClientApp/pages/GameGBkeno.js',
'gamegbkthree': './ClientApp/pages/GameGBkTHREE.js',
'gamegblotto': './ClientApp/pages/GameGBlotto.js',
'gamegbpkten': './ClientApp/pages/GameGBpkTEN.js',
'gamegbsports': './ClientApp/pages/GameGBsports.js',
'gamegbssc': './ClientApp/pages/GameGBssc.js',
'casino': './ClientApp/pages/Casino.js',
'about': './ClientApp/components/About.js',
'info': './ClientApp/pages/member/info.js',
'trade': './ClientApp/pages/member/trade.js',
'bonus': './ClientApp/pages/member/bonus.js'
},
output: {
path: path.resolve(__dirname, 'wwwroot/dist'),
filename: '[name].js',
publicPath: '/dist/'
},
plugins: [
extractCSS,
new webpack.ProvidePlugin({
$: 'jquery',
jQuery: 'jquery',
'window.jQuery': 'jquery',
Popper: ['popper.js', 'default']
}),
new webpack.optimize.CommonsChunkPlugin({
name: ["header", "common", "runtime"],
minChunks: Infinity
}),
new webpack.optimize.OccurrenceOrderPlugin(),
//new webpack.DefinePlugin({
// 'process.env': {
// 'NODE_ENV': JSON.stringify('production')
// }
// }),
new webpack.optimize.UglifyJsPlugin()
],
module: {
rules: [
{ test: /\.css$/, use: extractCSS.extract(['css-loader?minimize']) },
{
test: /\.js?$/, use: {
loader: 'babel-loader',
options: {
presets: ['@babel/preset-react', '@babel/preset-env'],
plugins: [require('@babel/plugin-proposal-object-rest-spread'),
require('@babel/plugin-proposal-class-properties')],
babelrc: true
}
}
},
{
test: /\.js?$/,
loader: 'webpack-module-hot-accept',
exclude: /node_modules/,
},
{
test: /\.(jpe?g|png|gif|woff|woff2|eot|ttf|svg)(\?[a-z0-9=.]+)?$/,
loader: 'url-loader?limit=100000'
}
]
}
};