前端工程化解决方案webpack使用小结
前端工程化解决方案webpack,模块化、组件化、规范化、自动化,使得前端开发更加高效。
功能:代码压缩混淆、处理浏览器端js的兼容性、以模块化的方式处理项目中的资源
webpack插件:clean-webpack-plugin 清除dist文件夹之前打包生成的文件
使用步骤:先安装 再在webpack.config.js文件配置 导入构造函数 创建构造函数的实例对象 挂载 plugins 运行打包
注意点:entry:源js文件path 生成文件 output:[ path: filename:'js/bundle.js'] js/目录打包时自动将js文件放在dist文件下js目录中,插件默认安装到devDependencies开发环境中
webpack插件:webpack-dev-server 使webpack监测源代码变化,自动进行打包构建
使用步骤:先安装 再在package.json文件配置 scripts{ dev :'webpack serve'} 运行打包
注意点:1、会启动一个http类型的实时打包的服务器
2、打包生成的文件默认放在内存中,不会进行代码压缩和性能优化
webpack插件:html-webpack-plugin 复制需要的文件到内存中,自动添加需要的样式
使用步骤:先安装 再在webpack.config.js文件配置 导入构造函数 创建构造函数的实例对象 挂载 plugins 运行打包
注意点:构造函数实例对象{template:复制地址,filename:'文件名'},插件默认安装到devDependencies开发环境中
插件devServer{host:主机名/域名,port:端口号,open:true 打包运行后是否自动打开浏览器}
加载器loader,webpack默认只能处理js文件,帮助webpack处理特定的文件模块
css-loader 处理加载css文件
使用:先安装,然后在webpack.config.js中配置module->rules[test:/\.css$/,user:['style-loader','css-loader']]
注意点:写法固定,执行顺序从后向前递进
less-loader 处理加载less文件
使用:先安装,然后在webpack.config.js中配置module->rules[test:/\.less$/,user:['style-loader','css-loader','less-loader']]
注意点:写法固定,执行顺序从后向前递进
url-loader 处理图片类型的文件
使用:先安装,然后在webpack.config.js中配置module->rules[test:/\.jpg|png|gif$/,user:'url-loader?limit=100&outputpath=images']
注意点:1、<=limit转换成base64类型的文件,大于不会转换,转换后体积变大,会缓存到内存中
2、outputpath dist打包文件中会将图片类型的文件默认放到images文件夹下
babel-loader 处理高级js语法的文件
使用:先安装,然后在webpack.config.js中配置module->rules[test:/\.js$/,user:'babel-loader' exclude:/node-modules],然后需要单独配置babel.config.js文件,module.exports{ plugins:[]}
注意点:需要添加exclude排除项,只对自己写的js代码转换,不对三方的js代码转换
webpack打包:开发环境下,打包默认存放在内存中,体积较大,未进行代码压缩和性能优化
webpack mode:develop package->scripts->{dev:'webpack serve',build:'webpack --mode production'}
SourceMap 是一个信息文件,里面存储位置信息
使用配置:webpack.config.js->devtool:eval-source-map 开发环境 devtool:nosources-source-map生产环境
注意点:生产环境下查看位置信息js文件不跳转到页面信息
前端工程化解决方案webpack使用小结的更多相关文章
- 前端工程化与webpack的介绍
前端工程化 概念:在企业级的前端项目开发中,把前端开发所需的工具.技术.流程.经验等进行规范化.标准化. 模块化 js的模块化,css的模块化,资源的模块化 组件化 复用现有的UI结构,样式,行为 规 ...
- 前端工程化与webpack
(1) 前端工程化 近几年来,前端领域飞速发展,前端的工作早已不再是切几张图,写几个页面那么简单,项目比较大时,很可能会多人协同开发,模块化,组件化,CSS预编译等技术也被广泛的使用.前端自动化( ...
- 前端工程化之webpack中配置babel-loader(四)
安装 安装:npm i -D babel-core babel-loader babel-plugin-transform-runtime 安装:npm i -D babel-preset-es201 ...
- Vue.js到前端工程化
b站视频地址:黑马程序员Vue.js到前端工程化(webpack打包,以及Vue-cli3和Element-UI的使用) vue学习系列 1.vue概述 2.vue基本使用 3.vue模板语法 4.指 ...
- 基于webpack的前端工程化开发解决方案探索(一):动态生成HTML(转)
1.什么是工程化开发 软件工程的工程化开发概念由来已久,但对于前端开发来说,我们没有像VS或者eclipse这样量身打造的IDE,因为在大多数人眼中,前端代码无需编译,因此只要一个浏览器来运行调试就行 ...
- 基于webpack的前端工程化开发解决方案探索(二):代码分割与图片加载
今天我们继续来进行webpack工程化开发的探索! 首先来验证上一篇文章 基于webpack的前端工程化开发解决方案探索(一):动态生成HTML 中的遗留问题:webpack将如何处理按需加载的 ...
- 前端工程化 Webpack基础
前端工程化 模块化 (js模块化,css模块化,其他资源模块化) 组件化 (复用现有的UI结构.样式.行为) 规范化 (目录结构的划分.编码规范化.接口规范化.文档规范化.Git分支管理) 自动化 ( ...
- [转]基于gulp和webpack的前端工程化
本文样例代码 :https://github.com/demohi/learning-gulp 本文主要简单介绍一下基于gulp和webpack的前端工程化. 技术栈 React.js reFlux ...
- 前端工程化(二)---webpack配置
导航 前端工程化(一)---工程基础目录搭建 前端工程化(二)---webpack配置 前端工程化(三)---Vue的开发模式 前端工程化(四)---helloWord 继续上一遍的配置,本节主要记录 ...
- 使用webpack+vue.js构建前端工程化
参考文章:https://blog.csdn.net/qq_40208605/article/details/80661572 使用webpack+vue.js构建前端工程化本篇主要介绍三块知识点: ...
随机推荐
- [python] 启发式算法库scikit-opt使用指北
scikit-opt是一个封装了多种启发式算法的Python代码库,可以用于解决优化问题.scikit-opt官方仓库见:scikit-opt,scikit-opt官网文档见:scikit-opt-d ...
- SQL提高查询性能的几种方式
创建索引,提高性能 索引可以极大地提高查询性能,其背后的原理: 索引是的数据库引擎能够快速的找到表中的数据,它们类似于书籍的目录,使得你不需要逐页查找所需要的信息 索引能够帮助数据库引擎直接定位到所需 ...
- AI辅助教学,甚至AI教学,逐渐成为可能
看新闻,有感: 太火爆!一门课,两个月吸粉十五万人!企业纷纷布局!千亿级大市场,来了?
- 【转载】 python鸭子类型与protocol
版权声明:本文为CSDN博主「yuanzhoulvpi」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明.原文链接:https://blog.csdn.net/yuan ...
- 【转载】回复“大修意见”(Major Revision)的模板 —— 审稿意见回复模板
原文地址: https://zhuanlan.zhihu.com/p/80214252 ================================================== 上周有个小 ...
- ubuntu22.04 终端显示数字剑雨
数字剑雨是读大学时候常用的屏保,这些年基本也再没有用过,不经意间想到了这个曾经的屏保,发现Ubuntu原版的桌面系统是没有屏保的,又不想换桌面系统,想想还是单独安装一下这个数字剑雨吧. 在Ubuntu ...
- Redis中的Hash类型常用命令
一.hset命令作用:设置hash类型值:格式:hset key field value案例:192.168.0.111:0>hset product name 苹果"1" ...
- java多线程之ReentrantLock详解
1.背景 2.基本语法 public class Test01 { // 定义锁 static ReentrantLock reentrantLock = new ReentrantLock(); p ...
- 【VMware VCF】VMware Cloud Foundation Part 07:管理工作负载域中的主机和集群。
一个标准 VMware Cloud Foundation 实例中具有管理工作负载域和 VI 工作负载域两种类型,管理域有且只有一个,而 VI 域可以创建多个,每种工作负载域中可以具有多个 vSpher ...
- k8s资源预留
Kubernetes 的节点可以按照 Capacity 调度.默认情况下 pod 能够使用节点全部可用容量. 这是个问题,因为节点自己通常运行了不少驱动 OS 和 Kubernetes 的系统守护进程 ...