如何在webpack中指定解析器依赖项?

时间:2016-11-23 19:51:10

标签: javascript requirejs webpack

我试图从RequireJs切换到webpack来处理js加载,sass处理&其他类似的东西。

在RequireJs中,可以指定模块的依赖关系

// file.js
require(['moduleA','moduleB'],function(A,B) {
    ...
}

我想指定moduleA需要jquery例如

// requirejs.config.js
require.config({
    ...
    shim:{
        moduleA:{
            deps:['jquery']
        } 
    }
})

我试图找到一种方法在webpack中做同样的事情

// webpack.config.js
module.exports = {
    entry: toObject(glob.sync('src/**/*.js*')),
    output: {
        path: './bin',
        filename: '[name].js'
    },
    resolve: {
        alias: {
            'moduleA': '/path/to/moduleA',
            ...
        }
    }
};

function toObject(paths) {
    // I return an object of paths
}

但是我无法找到指定moduleA需要另一个模块的方法!

有人在这里有线索吗?

1 个答案:

答案 0 :(得分:1)

你不需要。你只需require()你需要的任何模块,它就可以使用。

您需要使用RequireJS执行此操作的原因是RequireJS是异步的,模块是异步加载的,因此它需要知道首先加载什么。 Webpack(和CommonJS一般)是同步的。当你进入模块时,一切都已经加载。