webpack如何运作?

时间:2016-02-25 11:10:30

标签: javascript webpack

我不明白webpack的require功能如何运作。例如,我正在阅读关于webpack的this article,并且有以下示例:

  

让我们首先创建我们的项目并安装Webpack,我们也是   拉入jQuery以便稍后演示一些事情。

$ npm init
$ npm install jquery --save
$ npm install webpack --save-dev
  

现在让我们在普通的ES5中创建应用程序的切入点:

     

的src / index.js

var $ = require('jquery');

$('body').html('Hello');
  

让我们在webpack.config.js文件中创建我们的Webpack配置。   Webpack配置只是Javascript,需要导出一个   对象:

     

webpack.config.js

module.exports = {
    entry:  './src',
    output: {
        path:     'builds',
        filename: 'bundle.js',
    },
};

webpack如何知道require('jquery')中的jquery是什么?我没有看到任何与jquery相关的配置选项。

1 个答案:

答案 0 :(得分:6)

在这种情况下,它就像CommonJS require一样(例如,节点require)。 (Webpack' require支持比传统require更多的灵活性,但默认行为是相同的。)

This Modules section in the docs解释了Node如何确定从require()调用返回的内容。如果您需要' jquery',它首先会查找该名称的原生模块,找不到该模块,然后查看node_modules(因为那里没有{{}在路径的开头1}}或/。因为' jquery'是一个文件夹,它查看./文件以查看它声明包的package.json文件的内容,以及它执行的内容。

值得一读的是全部;例如,缓存部分很重要。