react-toolbox依赖关系:未捕获的TypeError:无法读取未定义的属性'string'

时间:2019-05-29 13:03:15

标签: reactjs webpack-4 react-proptypes react-toolbox

我尝试将react-toolbox与webpack 4一起使用并进行react 16,但我在加载react-toolbox依赖项时遇到问题,尽管在node_modules中存在它们,但它们不需要prop-types:我得到了错误:

https://monosnap.com/file/iUQAtohH4Zuv9uKeNSXqkJWG8IOZ5U

这是我的webpack规则:

{
   test: /\.(js|jsx)$/,
   exclude: /node_modules/,
   loader: 'babel-loader'
},{
   // react-toolbox
   test: /\.css$/,
   include: Path.join(Config.node_modules, 'react-toolbox'),
   use: [
      {
         loader: 'css-loader',
         options: {
            modules: true,
            sourceMap: true,
            importLoaders: 1,
            localIdentName: '[name]--[local]--[hash:base64:8]'
         }
      },
      'postcss-loader'
   ]
},

我的postcss.config.js:

module.exports = {
    plugins: {
        'postcss-cssnext': {
            features: {
                customProperties: {
                    variables: {
                        'animation-duration': '0.3s',
                        'color-primary': '#00a6ba',
                        'color-accent': 'var(--palette-pink-a200)',
                        'color-accent-dark': 'var(--palette-pink-700)',
                        'color-primary-contrast': 'var(--color-dark-contrast)',
                        'color-accent-contrast': 'var(--color-dark-contrast)',
                    }
                }
            }
        }
    }
};

我的package.json:

    "prop-types": "15.6.2",
    "react": "16.8.6",
    "react-dom": "16.8.6",
    "react-intl": "2.9.0",
    "react-redux": "7.0.3",
    "react-router": "5.0.0",
    "react-router-dom": "5.0.0",
    "react-router-redux": "4.0.8",
    "react-toolbox": "^2.0.0-beta.13",

1 个答案:

答案 0 :(得分:0)

我弄清楚了问题所在,是webpack provider plugin,当我从提供程序插件中删除了prop-types后,所有的东西都很酷,但是这影响了其他依赖项,因此我需要删除类名和react-intl也是

这很奇怪,因为我加载了提供程序插件的响应,并且它的工作正常,但是prop-types和另一个使用prop-types的库在导入时出错。