前端工程化解决方案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构建前端工程化本篇主要介绍三块知识点: ...
随机推荐
- Charles 4.6 小茶杯 网络抓包工具
下载官网: https://www.charlesproxy.com/download 破解网站: Charles破解工具 (zzzmode.com)
- java 使用openoffice将doc、docx、ppt、pptx等转换pdf格式文件
软件的安装与配置 链接: 官网 / C**N / 毒盘:提取码k47b 有能力的大佬可以选择c**n下载支持支持,官网下载可能有点慢 Windows下安装配置 下载安装包,安装到硬盘(这个就不截图了吧 ...
- (续)signal-slot:python版本的多进程通信的信号与槽机制(编程模式)的库(library) —— 强化学习ppo算法库sample-factory的多进程包装器,实现类似Qt的多进程编程模式(信号与槽机制) —— python3.12版本下成功通过测试
前文: signal-slot:python版本的多进程通信的信号与槽机制(编程模式)的库(library) -- 强化学习ppo算法库sample-factory的多进程包装器,实现类似Qt的多进程 ...
- 修改linux系统时间由UTC改为CST(中国上海)时区
Ubuntu系统 1. 将时间改为CST的中国上海时间: 命令: sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 或: sudo ...
- baselines算法库common/wrapper.py模块分析
common/wrapper.py模块: import gym class TimeLimit(gym.Wrapper): def __init__(self, env, max_episode_st ...
- vscode 设置窗口菜单栏显示字体大小
最近换了一块大些的显示屏,发现vscode的窗口字体有些小了,不是很方便,于是研究了一下如何设置vscode的窗口字体大小. 需要注意的是这里的设置是对窗口字体的而不是编辑器的字体. 1 . 通过主 ...
- Ubuntu系统中CUDA套件nvvp启动后报错Failed to load module "canberra-gtk-module"
最近在看cuda方面的内容,需要对cuda代码做一些性能分析,于是需要使用nvvp,但是启动nvvp后报错:Failed to load module "canberra-gtk-modul ...
- SMU Spring 2023 Trial Contest Round 1
A. Prepend and Append 用ans记录n的值,然后双指针从前后判断是否一个为0一个为1,是的话则ans-2,否则退出循环即可. #include<bits/stdc++.h&g ...
- 《重学Java设计模式》笔记——建造者模式
1. 建造者模式可以解决什么问题 我家里有各种形状的瓷器,盘子或者碗.虽然形状不同,但是所用的材料基本上是一样的,比如土.水.釉.彩这些基本的东西. 但是做不同款式的瓷器,方法是不同的.假如说我现在已 ...
- 导出 LaTeX 为 SVG
LaTeX 本身并不直接支持导出 SVG 格式的文档或图片,但可以通过一些工具和插件实现将 LaTeX 文档或图形转换为 SVG 格式. 使用 dvisvgm 我们可以先将 LaTeX 文档编译为 D ...