前端工程化解决方案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使用小结的更多相关文章

  1. 前端工程化与webpack的介绍

    前端工程化 概念:在企业级的前端项目开发中,把前端开发所需的工具.技术.流程.经验等进行规范化.标准化. 模块化 js的模块化,css的模块化,资源的模块化 组件化 复用现有的UI结构,样式,行为 规 ...

  2. 前端工程化与webpack

    (1) 前端工程化   近几年来,前端领域飞速发展,前端的工作早已不再是切几张图,写几个页面那么简单,项目比较大时,很可能会多人协同开发,模块化,组件化,CSS预编译等技术也被广泛的使用.前端自动化( ...

  3. 前端工程化之webpack中配置babel-loader(四)

    安装 安装:npm i -D babel-core babel-loader babel-plugin-transform-runtime 安装:npm i -D babel-preset-es201 ...

  4. Vue.js到前端工程化

    b站视频地址:黑马程序员Vue.js到前端工程化(webpack打包,以及Vue-cli3和Element-UI的使用) vue学习系列 1.vue概述 2.vue基本使用 3.vue模板语法 4.指 ...

  5. 基于webpack的前端工程化开发解决方案探索(一):动态生成HTML(转)

    1.什么是工程化开发 软件工程的工程化开发概念由来已久,但对于前端开发来说,我们没有像VS或者eclipse这样量身打造的IDE,因为在大多数人眼中,前端代码无需编译,因此只要一个浏览器来运行调试就行 ...

  6. 基于webpack的前端工程化开发解决方案探索(二):代码分割与图片加载

    今天我们继续来进行webpack工程化开发的探索! 首先来验证上一篇文章   基于webpack的前端工程化开发解决方案探索(一):动态生成HTML  中的遗留问题:webpack将如何处理按需加载的 ...

  7. 前端工程化 Webpack基础

    前端工程化 模块化 (js模块化,css模块化,其他资源模块化) 组件化 (复用现有的UI结构.样式.行为) 规范化 (目录结构的划分.编码规范化.接口规范化.文档规范化.Git分支管理) 自动化 ( ...

  8. [转]基于gulp和webpack的前端工程化

    本文样例代码 :https://github.com/demohi/learning-gulp 本文主要简单介绍一下基于gulp和webpack的前端工程化. 技术栈 React.js reFlux ...

  9. 前端工程化(二)---webpack配置

    导航 前端工程化(一)---工程基础目录搭建 前端工程化(二)---webpack配置 前端工程化(三)---Vue的开发模式 前端工程化(四)---helloWord 继续上一遍的配置,本节主要记录 ...

  10. 使用webpack+vue.js构建前端工程化

    参考文章:https://blog.csdn.net/qq_40208605/article/details/80661572 使用webpack+vue.js构建前端工程化本篇主要介绍三块知识点: ...

随机推荐

  1. Jmeter函数助手18-machineIP

    machineIP函数用于获取本地IP地址. 存储结果的变量名(可选) 1.本地ip可以在cmd运行界面输入命令"ipconfig"查看,Jmeter则使用函数获取${__mach ...

  2. 【Lodop】01 Lodop手册阅读上手

    官方网站: http://www.c-lodop.com/index.html 版本:6.2.2.6 一.概述 Lodop是一款用于WEB打印开发的专业WEB打印控件 控件发布包有3个系统文件组成,主 ...

  3. 人形机器人从人类演示(demenstration)数据中学习人类行为(behavior)的几种方式

    人形机器人从人类演示(demenstration)数据中学习的几种方式 使用仿真环境,在仿真环境中生成近似人类的行为数据,然后利用仿真生成的数据训练机器人. 该种方式最为传统,也最为易行,但是由于仿真 ...

  4. 《Python数据可视化之matplotlib实践》 源码 第二篇 精进 第七章

    图   7.1   import matplotlib as mpl import matplotlib.pyplot as plt import numpy as np mpl.rcParams[& ...

  5. 什么是snapshot isolation

    数据库常见的4种事务隔离级别: (源自:(34条消息) 8. 事务隔离级别: 总结_oyw5201314ck的博客-CSDN博客_ck事务隔离) 大多数的数据库默认的事务隔离级别是Repeatable ...

  6. Apache DolphinScheduler数仓任务管理规范

    前言: 大数据领域对多种任务都有调度需求,以离线数仓的任务应用最多,许多团队在调研开源产品后,选择Apache DolphinScheduler(以下简称DS)作为调度场景的技术选型.得益于DS优秀的 ...

  7. Android网页投屏控制从入门到放弃

    背景 业务需要采集在app上执行任务的整个过程,原始方案相对复杂,修改需要协调多方人员,因而考虑是否有更轻量级的方案. 原始需求: 记录完成任务的每一步操作(点击.滑动.输入等) 记录操作前后的截图和 ...

  8. git push --recurse-submodules = on-demand 递归push

    I have the following project structure: root-project | |-- A | | | |-- C | |-- B A和B是根项目的子模块. C又是项目A ...

  9. MPTCP(二):MPTCP版本说明

    MPTCP版本说明 简介 参考链接 https://github.com/multipath-tcp/mptcp_net-next/wiki MPTCP的两个版本 MPTCPv0: 在5.6之前的li ...

  10. AntSK:在无网络环境中构建你的本地AI知识库的终极指南

    亲爱的读者朋友们,我是许泽宇,今天我将深入探讨一个引人注目的开源工具--AntSK.这个工具让您在没有互联网连接的情况下,仍然能够进行人工智能知识库的对话和查询.想象一下,即使身处无网络环境中,您也可 ...