我正在尝试将Webpack3与Babel一起使用来编译ES6资产,但出现错误“您可能需要适当的加载程序来处理此文件类型”。以下是我得到的确切错误:
ERROR in ./node_modules/use-global-hook/index.js
Module parse failed: Unexpected token (2:18)
You may need an appropriate loader to handle this file type.
| function setState(store,newState,afterupdateCallback) {
| store.state = { ...store.state,...newState };
| store.listeners.forEach((listener) => {
| listener.run(store.state);
@ ./src/components/dynamicLabel/store/index.js 11:21-47
@ ./src/components/dynamicLabel/components/dynamicLabel.js
@ ./src/components/dynamicLabel/index.js
这是我的webpack.config.js的样子:
const path = require('path');
module.exports = {
devtool: 'source-map',entry: {
csvparse: './src/components/csvparse',dateTime: './src/components/dateTime',gmoment: './src/components/gmoment',dynamicLabel: './src/components/dynamicLabel',gvideo: './src/components/gvideo',stickyScroll: './src/components/stickyScroll',webaccessibility: './src/components/webaccessibility'
},output: {
path: path.resolve(__dirname,'lib'),filename: '[name]/index.js',libraryTarget: 'commonjs2'
},resolve: {
extensions: ['.js','.jsx','.less']
},module: {
rules: [
{
test: /\.(js|jsx)$/,loader: 'babel-loader',exclude: /node_modules/
},{
test: /\.(?:le|c)ss$/,use: [
require.resolve('style-loader'),{
loader: require.resolve('css-loader'),options: {
importLoaders: 1
}
},{
loader: require.resolve('less-loader'),options: {
importLoaders: 1
}
}
]
}
]
},externals: {
'react': 'commonjs react'
}
};
这是我的package.json中的babel对象部分:
"babel": {
"presets": [
"es2015","stage-2","react"
],"plugins": [
[
"transform-runtime",{
"regenerator": true
}
]
]
},
有人可以帮我解决这个问题吗?
谢谢。