Webpack无法解决全球安装的babel或babel-loader

时间:2016-07-06 21:57:11

标签: node.js webpack babeljs

我一直在尝试一个新项目,并希望使用webpack和模块来分割代码。我安装了npm,然后按如下方式安装webpack npm install -g webpack

npm install -g babel-cli babel-core babel-loader babel-presets-es2015

现在,在我的项目中,我创建了一个包含以下内容的新config.js文件。

module.exports = {
    entry: './src/js/app.js',
    output: {
        filename: 'dist/js/bundle.js'
    },
    module: {
        loaders: [
            {
                test: /\.js$/,
                loader: 'babel-loader'
            }
        ]
    },

}

然而,我总是得到一个错误说 ERROR in Entry module not found: Error: Cannot resolve module 'babel-loader'

换句话说,如何让webpack解析全局安装的包?

1 个答案:

答案 0 :(得分:2)

终于开始了。不确定这是不是正确的方法。然而, 这就是我的项目设置和工作方式。我想应该有一种更好的方法来设置模块加载器的预设。

my-project
  src
    js
      entry.js
      module1.js
      module2.js
  dist
    index.html
    js
      bundle.js

现在,我当前的config.js设置如下所示。

module.exports = {

    resolve: {
      fallback: '/usr/local/lib/node_modules'
    },
    resolveLoader: {
        fallback: '/usr/local/lib/node_modules'
    },
    entry: './src/js/app.js',
    output: {
        filename: 'dist/js/bundle.js'
    },
    module: {
        loaders: [
            {
                test: /\.js$/,
                loader: 'babel-loader',
                query: {
                    presets: ['/usr/local/lib/node_modules/babel-preset-es2015']
                }
            }
        ]
    },

}