javascript - webpack到底是通过什么方式在浏览器上加载的呢
怪我咯
怪我咯 2017-04-11 12:31:53
[JavaScript讨论组]

最近在看webpack的相关知识,想要把它运用到项目中。 原来项目用的是requirejs,属于AMD,异步加载模块,我对amd的理解是 在浏览器上,浏览器加载编译器(requirejs),然后根据依赖加载其他模块,这个过程是在浏览器上完成的。至于异步是指script中引用requirejs,下面还可以写其他script。下面引入的js文件可能会比上面文件很快加载。 至于webpack是在服务器端(本地)根据依赖把js文件打包好。也就是说把依赖处理的工作放在了服务器端。最后在js上直接引入就可以了。 不知道我这样的理解对不对?另外我看到webpack兼容AMD,但是它本身是在浏览器中是同步或是异步的呢? 希望和大家交流加深理解

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(2)
PHPz

我理解的 webpack 是这样的,它打包之后,实际上生成的是一个普普通通的 js 文件而已,并没有你想象的辣么神奇。

它模块化的原理大概是下面这样的:

var a = {};

(function(a){
    //模块1
    a.module1 = '';
})(a);

(function(a){
    //引入模块1
    var module1 = a.module1;

    //模块2
    a.module2 = '';
})(a);
黄舟

浏览器不执行什么,兼容AMD写法,也是在服务器打包好的。
你可以看一下webpack build出来的文件长啥样,就是把html,css,js模块,都放到一个js里,你有一个入口html,调用这个js。
没那么复杂

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号