webpack入门讲解(一)

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
简介: webpack入门讲解(一)

webpack入门讲解


这篇文章,我们主要给大家讲解五个部分:entry、output、loader、plugins、mode,让大家对webpack有个大概的认识。


讲解今天的内容前,我们先看下webpack官网的一张图:

image.png

   

本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(static module bundler)。


entry(入口)

   entry简单来说就是webpack会把这个模块当做起点,然后找到这个模块所依赖的模块和 library,从而构建其内部依赖图。  


   一般我们在webpack 配置中配置 entry 属性: 例如:

module.exports = {
  entry: {
    app: './src/main.js'
  },
};


output(出口)

   output简单来说就是告诉webpack在指定的目录下输出的bundles,同时会给这些文件命名。  

   常见的配置如下:

const path = require('path');
module.exports = {
  output: {
    path: path.resolve(__dirname, 'dist'),
    filename: 'my-webpack.bundle.js'
  }
};


上面的配置中,参数说明:

output.filename作用:告诉 webpack bundle 的名称。

output.path作用: bundle 生成(emit)到哪里。 上面导入的 path 模块,它是一个 Node.js 核心模块,用于操作文件路径。本文不展开讲解。


loader

   为什么需要用到loader,原因是webpack 自身只支持 JavaScript。 loader 可以让 webpack 处理那些非 JavaScript 文件,而且会先将它们转换为有效 模块,然后添加到依赖图中,这样就可以提供给应用程序使用了。


常见的配置如下:

module: {
    rules: [
      { test: /\.md$/, use: 'text-loader' }
    ]
}


配置代码解析: 上面的配置是对一个单独的 module 对象定义了 rules 属性,里面包含两个必须属性:test 和 use。 作用是: webpack 编译器(compiler) 解析到「 require()/import 语句中被解析为 '.md' 的路径」时,打包之前,先使用 text-loader 转换一下。”


plugins(插件)

   plugins使用的范围比loader更广,平时我们开发的过程中经常使用plugins包括:打包优化、资源管理和注入环境变量。

const HtmlWebpackPlugin = require('html-webpack-plugin'); // npm install
module.exports = {
  plugins: [
    new HtmlWebpackPlugin({template: './src/index.html'})
  ]
};


配置代码解析:

 html-webpack-plugin 插件的作用:

是在应用程序中生成一个 html 文件,然后自动注入所有生成的 bundle。


mode

mode 参数包括: development,  production,  none。 我们可以启用对应环境下 webpack 内置的优化。

上面的讲解了webpack的常用配置,文末贴上本人的一点小小心得。


结语

   作为一名前端开发人员,我们需要不断update自己的技术栈,提高自己在这个行业的竞争力。我们需要横向去提高我们的眼界,纵向去提高我们的竞争力。

相关文章
|
9月前
|
JSON JavaScript 前端开发
Webpack【Webpack图片处理、Webpack中proxy代理 、自动清理dist、Webpack优化、JavaScript中的代码检查】(三)-全面详解(学习总结---从入门到深化)(下)
Webpack【Webpack图片处理、Webpack中proxy代理 、自动清理dist、Webpack优化、JavaScript中的代码检查】(三)-全面详解(学习总结---从入门到深化)
115 2
|
JSON 前端开发 JavaScript
前端AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(一)
前端AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(一)
620 0
|
5月前
|
JSON 前端开发 JavaScript
不会webpack的前端可能是捡来的,万字总结webpack的超入门核心知识
该文章提供了Webpack的基础入门指南,涵盖安装配置、基本使用、加载器(Loaders)、插件(Plugins)的应用,以及如何通过Webpack优化前端项目的打包构建流程。
不会webpack的前端可能是捡来的,万字总结webpack的超入门核心知识
|
5月前
|
缓存 JSON 前端开发
webpack入门核心知识还看不过瘾?速来围观万字入门进阶知识
该文章深入探讨了Webpack的高级配置与使用技巧,包括Tree Shaking、开发与生产环境的配置差异、代码分割策略、预加载与预取技术的应用等方面的内容。
|
9月前
|
Web App开发 JSON 前端开发
Webpack【搭建Webpack环境、Webpack增加配置文件、Webpack中使用Loader、Webpack分离CSS文件 】(一)-全面详解(学习总结---从入门到深化)
Webpack【搭建Webpack环境、Webpack增加配置文件、Webpack中使用Loader、Webpack分离CSS文件 】(一)-全面详解(学习总结---从入门到深化)
290 0
|
9月前
|
存储 前端开发 JavaScript
Webpack【Webpack中模式(Mode)、Webpack中使用DevServer、Webpack中devtool增强调试过程】(二)-全面详解(学习总结---从入门到深化)
Webpack【Webpack中模式(Mode)、Webpack中使用DevServer、Webpack中devtool增强调试过程】(二)-全面详解(学习总结---从入门到深化)
278 0
|
9月前
|
JSON 前端开发 JavaScript
Webpack【搭建Webpack环境、Webpack增加配置文件、Webpack中使用Loader、Webpack分离CSS文件 】(一)-全面详解(学习总结---从入门到深化)(上)
Webpack【搭建Webpack环境、Webpack增加配置文件、Webpack中使用Loader、Webpack分离CSS文件 】(一)-全面详解(学习总结---从入门到深化)
110 0
|
9月前
|
JSON 前端开发 JavaScript
Webpack【Webpack图片处理、Webpack中proxy代理 、自动清理dist、Webpack优化、JavaScript中的代码检查】(三)-全面详解(学习总结---从入门到深化)
Webpack【Webpack图片处理、Webpack中proxy代理 、自动清理dist、Webpack优化、JavaScript中的代码检查】(三)-全面详解(学习总结---从入门到深化)
128 0
Webpack【Webpack图片处理、Webpack中proxy代理 、自动清理dist、Webpack优化、JavaScript中的代码检查】(三)-全面详解(学习总结---从入门到深化)
|
9月前
|
前端开发 JavaScript
Webpack【Webpack图片处理、Webpack中proxy代理 、自动清理dist、Webpack优化、JavaScript中的代码检查】(三)-全面详解(学习总结---从入门到深化)(上)
Webpack【Webpack图片处理、Webpack中proxy代理 、自动清理dist、Webpack优化、JavaScript中的代码检查】(三)-全面详解(学习总结---从入门到深化)
98 2