在单页应用的JS使用中,使用webpack打包工具可以把多个JS模块打包成一个JS文件,然后index.html里引入这个文件就可以了。
那如果不是单页应用呢?webpack分别把每个页面引入的多个JS文件压缩成一个,然后每个html页面引入一个压缩后的JS文件?
记得之前看过提高性能的博客,其中有一条是,把多个JS文件合并为一个,这样可以减少http请求数,从而提高传输效率,以前看的时候觉得挺自然的,现在有一个疑问,这样合并时,如果原JS文件脚本中没有注意使用闭包的方式,多个JS脚本之间,不是很容易形成变量命名冲突吗?
Conflit de noms de variables lors de la fusion de JS ? - Questions et réponses sur le site Web chinois PHP - Conflit de nom de variable lors de la fusion de JS ? - Questions et réponses sur le site Web chinois PHP
Veuillez regarder et apprendre.
1.如果是多页面的应用,webpack可以设置多个入口点,将每个页面的js分别打包,在页面中引入
2.webpack将每个js文件看成一个模块(与Node.js类似),在不同的模块下,即使变量名相同,也不会冲突
3.模块之间共享变量需要在模块中进行导入与导出操作