前端工程化解决方案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构建前端工程化本篇主要介绍三块知识点: ...
随机推荐
- 5、SpringMVC之域对象共享数据
5.1.域对象简介 请求域(request):一次请求范围内有效 会话域(session):一次会话范围内有效 应用域(application):整个应用范围内有效 5.2.环境搭建 5.2.1.右击 ...
- 【WSDL】02 四种客户端调用方式
WSDL概念和一些语法内容: https://www.w3school.com.cn/wsdl/index.asp SOAP概念: https://www.runoob.com/soap/soap-t ...
- 【RabbitMQ】11 深入部分P4 延迟队列
一.延迟队列: 消息经过交换机分配到队列上之后,在到达指定的时间,才会被消费? 需求: 1.下单之后的30分钟,用户未支付,订单取消,回滚库存 2.新用户注册7天后,发送短信慰问,或者是用户生日发送短 ...
- tf.metrics 使用过程中发现的一些问题
起因是看到了这么一个帖子: http://www.cocoachina.com/cms/wap.php?action=article&id=86347 简短来说就是下面的代码 运行起来结果 ...
- 【转载】 Ubuntu 中开机自动执行脚本的两种方法
原文地址: https://www.jianshu.com/p/6366d7070642 作者:貘鸣来源:简书 ============================================ ...
- Java项目生产启动、关闭脚本
1.直接启动 #!/bin/bash #这里可替换为你自己的执行程序,其他代码无需更改 APP_NAME=XXXX-api-1.0.jar #使用说明,用来提示输入参数 usage() { echo ...
- 2. 从0开始学ARM-CPU原理,基于ARM的SOC讲解
关于ARM的一些基本概念,大家可以参考我之前的文章: <到底什么是Cortex.ARMv8.arm架构.ARM指令集.soc?一文帮你梳理基础概念[科普]> 关于ARM指令用到的IDE开发 ...
- Atcoder ABC364 D-F
Atcoder ABC364 D-F D - K-th Nearest 链接: D - K-th Nearest (atcoder.jp) 简要题意: 问题陈述 在一条数线上有 \(N+Q\) 个点 ...
- 可以调用Null的实例方法吗?
前几天有个网友问我一个问题:调用实例方法的时候为什么目标对象不能为Null.看似一个简单的问题,还真不是一句话就能说清楚的.而且这个结论也不对,当我们调用定义在某个类型的实例时,目标对象其实可以为Nu ...
- 寻访中国100家.NET中大企业 —— 第二站:苏州行
一:事情起因 在.NET圈里混了十多年,相信有不少人知道我专注于玩 .NET高级调试,如今技术上的硬实力还是能够解决市面上的一些疑难杂症,但软实力却在另一个极端,如(人际交往,人情事故),所以就萌生了 ...