Webpack 2:无法解析模块

2024-02-20

我有一个这样的项目:

root/
    webpack-config.js
    app/
       app.js
       js/
         dep.js
    core/
        module.js

这是 webpack 配置文件:

module.exports = {
    entry: './app/app.js',
    output: {
        path: __dirname,
        filename: "[name]-bundle.js"
    },
    module: {
        loaders: [
            { test: /\.js$/, loader: 'babel-loader', exclude: /node_modules/     }          
        ]
    },
    resolve: {
      modulesDirectories: ['core']
    }
    ...

在 app.js 中,我有:

import local_dep from './js/dep';
import myModule from 'module';

这在 webpack 1.x 中按预期工作,但 myModule 模块未在 webpack 2 中解析,我收到“找不到模块:无法解析 ... \app 中的‘模块’”。

似乎 moduleDirectories 条目被忽略,基本 URL 对应于该条目的文件夹。

我该怎么做才能使 webpack 2 正确解析模块?


from: http://moduscreate.com/webpack-2-tree-shaking-configuration/ http://moduscreate.com/webpack-2-tree-shaking-configuration/

在 Webpack 2 中,解析器来自root, modulesDirectories, and fallback设置将合并为一个属性 –modules。以下是我们如何解析 Webpack 2 中的文件和模块位置:

  resolve: {
    modules: [
      path.resolve('./client'),
      'node_modules'
    ]
  },

您可以指定多个目录modules,但请确保不要忘记node_modules否则 npm 包依赖项将无法加载。


所以在你的情况下之前是:

resolve: {
  modulesDirectories: ['core']
}

现在需要

resolve: {
  modules: ['core'] // also 'node_modules' 
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Webpack 2:无法解析模块 的相关文章

随机推荐