Vue系列教程(16)- 模块打包器(webpack)

简介: Vue系列教程(16)- 模块打包器(webpack)

1. 引言

通过前面的章节,我们已经学会了Vue的事件内容分发,有兴趣的同学可以参阅下:

Vue的基础知识至此基本已经学完了,接下来主要学习Vue项目的打包方式,即本文讲的webpack

2. 什么是webpack

Webpack是当下最热门的前端资源模块化管理和打包工具, 它可以:

  • 将许多松散耦合的模块按照依赖和规则打包成符合生产环境部署的前端资源。
  • 还可以将按需加载的模块进行代码分离,等到实际需要时再异步加载。
  • 通过loader转换, 任何形式的资源都可以当做模块, 比如Commons JS、AMD、ES 6、CSS、JSON、Coffee Script、LESS等;

Webpack是一个现代JavaScript应用程序的静态模块打包器(module bundler) 。当Webpack处理应用程序时, 它会递归地构建一个依赖关系图(dependency graph) , 其中包含应用程序需要的每个模块, 然后将所有这些模块打包成一个或多个bundle。(类似于Maven

伴随着移动互联网的大潮, 当今越来越多的网站已经从网页模式进化到了WebApp模式。它们运行在现代浏览器里, 使用HTML 5、CSS 3、ES 6等新的技术来开发丰富的功能, 网页已经不仅仅是完成浏览器的基本需求;WebApp通常是一个SPA(单页面应用) , 每一个视图通过异步的方式加载,这导致页面初始化和使用过程中会加载越来越多的JS代码,这给前端的开发流程和资源组织带来了巨大挑战。

前端开发和其它开发工作的主要区别:

  • 首先是前端基于多语言、多层次的编码和组织工作
  • 其次前端产品的交付是基于浏览器的,这些资源是通过增量加载的方式运行到浏览器端

如何在开发环境组织好这些碎片化的代码和资源,并且保证他们在浏览器端快速、优雅的加载和更新,就需要一个模块化系统,这个理想中的模块化系统是前端工程师多年来一直探索的难题。

3. webpack安装

1.安装打包工具

sudo npm install webpack -g

2.安装客户端

sudo npm install webpack-cli -g

验证是否成功(如果有如下提示,安装成功):

4. webpack项目案例

4.1 创建webpack项目

①创建webpack项目,即文件夹(webpack-demo

vscode导入项目:

③创建一个名为modules的目录(用来放置JS模块等资源文件):

④ 在modules下创建模块文件Hello.js,并写入内容:

//暴露一个方法:sayHi
exports.sayHi = function () {
    document.write("<div>Hello Webpack</div>");
}

⑤ 在modules下创建一个名为main.js的入口文件:

//require 导入一个模块,就可以调用这个模块中的方法了
var hello = require("./hello");
hello.sayHi();

⑥在项目根目录下创建webpack.config.js配置文件:

代码如下:

module.exports = {
    entry: "./modules/main.js",
    output: {
        filename: "./js/bundle.js"
    }
}

4.2 打包

打开控制台 Terminal-> new Terminal,并输入命令webpack:

打包成功,并在项目目录可以看到生成以下目录及文件(bundle.js就是打包后好的js文件):

其它:命令行输入webpack --watch 代码发生变动,会自动重新打包

4.3 使用打包后的js文件

①在项目根目录下创建HTML页面:

完整代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<script type="text/javascript" src="./dist/js/bundle.js"></script>
<body>
</body>
</html>

②运行页面,效果如下:

4.4 小结

webpack相当于就是多个模块化的文件合并为一个js文件(这些打包后的文件经过处理,便可以向下兼容如ES5),最后我们可以把生成的js文件在html里直接引入。本文完!

目录
相关文章
|
2月前
|
资源调度 JavaScript 前端开发
创建vue3项目步骤以及安装第三方插件步骤【保姆级教程】
这是一篇关于创建Vue项目的详细指南,涵盖从环境搭建到项目部署的全过程。
360 1
|
6月前
|
缓存 监控 UED
升级 Vue3 时,如何减少打包体积的增加?
升级 Vue3 时,如何减少打包体积的增加?
368 59
|
6月前
|
API UED
升级 Vue3 后,项目的打包体积会有什么变化?
升级 Vue3 后,项目的打包体积会有什么变化?
199 57
|
5月前
|
JavaScript
webpack学习三:webpack初始化整合配置vue,一步一步的抽离代码块整合vue。
这篇文章是关于如何在webpack环境中配置Vue.js,包括安装Vue.js、解决报错、理解el与template的区别、使用SPA模式、抽离模板为对象、封装为单独的js文件、安装vue-loader时遇到的问题及解决方案,以及整个过程的总结。
152 2
webpack学习三:webpack初始化整合配置vue,一步一步的抽离代码块整合vue。
|
5月前
|
JavaScript Java CDN
vue3完整教程从入门到精通(新人必学1,vue3快速上手)
本文提供了Vue 3从入门到精通的完整教程,涵盖了创建Vue应用、通过CDN使用Vue、定义网站以及使用ES模块构建版本的步骤和示例代码。
2534 0
vue3完整教程从入门到精通(新人必学1,vue3快速上手)
|
5月前
|
缓存 前端开发 JavaScript
Webpack 打包的基本原理
【10月更文挑战第5天】
|
6月前
|
JavaScript 测试技术 Windows
vue配置webpack生产环境.env.production、测试环境.env.development(配置不同环境的打包访问地址)
本文介绍了如何使用vue-cli和webpack为Vue项目配置不同的生产和测试环境,包括修改`package.json`脚本、使用`cross-env`处理环境变量、创建不同环境的`.env`文件,并在`webpack.prod.conf.js`中使用`DefinePlugin`来应用这些环境变量。
517 2
vue配置webpack生产环境.env.production、测试环境.env.development(配置不同环境的打包访问地址)
|
5月前
|
前端开发 JavaScript
ES6模块化和webpack打包
【10月更文挑战第5天】
|
5月前
|
缓存 前端开发 JavaScript
深入了解Webpack:模块打包的革命
【10月更文挑战第11天】深入了解Webpack:模块打包的革命
|
5月前
|
JavaScript 前端开发

热门文章

最新文章