webpack相关笔记
文档地址:链接
文档:https://doc.webpack-china.org/configuration/
慕课网地址:链接
参考地址:链接
1、webpack是一个前端打包工具,特点:代码分割(Code Splitting),Loaders,模块热更新
2、npm init
npm install webpack --save-dev
require('./world.js');//common.js方式
一、css-loader将css文件打包进js中,style-loader将js中的css输出到html中生成<style>标签。
二、css文件处理:
css-loader用来打包css文件
style-loader用来给html页面使用css
使用css-loader和style-loader前,要先安装
安装方法:npm install css-loader style-loader --save-dev
方式1:在js文件中,require('style-loader!css-loader!./style.css')。
方式2:在命令行中,webpack hello.js hello.bundle.js --module-bind "css=style-loader!css-loader"。 三、监听文件改变,自动打包:webpack hello.js hello.bundle.js --module-bind "css=style-loader!css-loader" --watch。
打包过程进度条:--progress。
显示打包进度条并显示打包的文件:--progress --display-modules。
打包原因:--display-reasons 四、webpack.config.js
没有webpack.config.js时,指定配置文件 webpack --config 配置文件.js
这个文件是webpack的默认配置文件,当运行wenpack的时候,自动查询这个文件 一些参数可以配置package.json里面,这样在cmd里面运行时就方便些
cmd运行:npm run webpack
五。webpack.config.js里面的一些配置
entry的相关知识:链接
output的相关知识:链接
三个占位符来区别不同文件:1、name 2、hash 3、chunkhash
hash和chunkhash的区别
hash:是每次打包的hash
chunkhash: 每个模块自己的hash值,可以理解为版本号,也可理解为md5值(保证每个文件的唯一性) 六、plugins 链接在项目中,配置中有时候用的是hash或者chunkhash的文件名,这样每次都要在html里面配置,太麻烦,所以引入了plugins
webpack.config.js里面
1、安装 npm install html-webpack-plugin --save-dev
2、引用 var htmlWebpackPlugin = require('html-webpack-plugin');
3、使用 添加 plugins:[new htmlWebpackPlugin({template:'index.html'})]

疑问:为什么我们指定template的index.html,就代表的是根目录下的index.html。原因是module.exprots里面,有个context上行文属性,默认指的是运行环境的上下文,而我们的运行环境是根目录,所以template的index.html指的是根目录下的index.html

inject表示js在head里面

htmlWebpackPlugin里面的title属性

index.html里面的写法
可以在 htmlWebpackPlugin里面写其他属性,然后传递到html中


如果想对打包的文件进行操作,可以再htmlWebpackPlugin里面的minify属性

现在这个是删除空格,效果是:

七:module(loaders)
配置要使用的loader。对文件进行一些相应的处理。比如babel-loader可以把es6的文件转换成es5。大部分的对文件的处理的功能都是通过loader实现的。loader就相当于gulp里的task。loader可以用来处理在入口文件中require的和其他方式引用进来的文件。loader一般是一个独立的node模块,要单独安装。
loader配置项:
test: /\.(js|jsx)$/,//注意是正则表达式,不要加引号,匹配要处理的文件
loader: 'eslint-loader',//要使用的loader,"-loader"可以省略
include: [path.resolve(__dirname, "src/app")],//把要处理的目录包括进来
exclude: [nodeModulesPath]//排除不处理的目录 postcss-loader里面的autoprefixer,处理浏览器前缀的后处理工具
webpack相关笔记的更多相关文章
- 【原】webpack学习笔记
之前在react的项目中有用过webpack,不过没有认真的去研究,这段时间又重新好好的学习一下webpack,发觉 webpack是一个很强大的东西.而且很好用,方便,接下来主要是做一下学习的笔记 ...
- webpack学习笔记一(入门)
webpack集成了模块加载和打包等功能 ,这两年在前端领域越来越受欢迎.平时一般是用requirejs.seajs作为模块加载用,用grunt/gulp作为前端构建.webpack作为模块化加载兼容 ...
- webpack入门笔记
此为第一篇主要是webpack入门笔记: http://if-true.com/2015/10/16/webpack-tutorial-translate.html
- webpack学习笔记--区分环境
为什么需要区分环境 在开发网页的时候,一般都会有多套运行环境,例如: 在开发过程中方便开发调试的环境. 发布到线上给用户使用的运行环境. 这两套不同的环境虽然都是由同一套源代码编译而来,但是代码内容却 ...
- webpack学习笔记--压缩代码
浏览器从服务器访问网页时获取的 JavaScript.CSS 资源都是文本形式的,文件越大网页加载时间越长. 为了提升网页加速速度和减少网络传输流量,可以对这些资源进行压缩. 压缩的方法除了可以通过 ...
- webpack 相关插件及作用(表格)
webpack 相关插件及作用: table th:first-of-type { width: 200px; } table th:nth-of-type(2) { width: 140px; } ...
- HTTPS证书申请相关笔记
申请免费的HTTPS证书相关资料 参考资料: HTTPS 检测 苹果ATS检测 什么是ECC证书? 渠道2: Let's Encrypt 优点 缺点 Let's Encrypt 的是否支持非80,44 ...
- Webpack学习笔记九 webpack优化总结
webpack 优化笔记 webpack4 自带的优化包括 swingTree(摇摆树)和作用域提升 swingTree 比如入口文件 index.js引入通用方法 util, 里面有 10个方法, ...
- 学习webpack基础笔记01
学习webpack基础笔记 1.webpack搭建环境最重要的就是如何使用loader和plugins,使用yarn/npm安装插件.预处理器,正确的配置好去使用 2.从0配置webpack - 1. ...
随机推荐
- @DisallowConcurrentExecution 注解的作用 【定时器执行完当前任务才开启下一个线程的方式】
转: @DisallowConcurrentExecution 注解的作用 2018年10月12日 16:42:40 fly_captain 阅读数:4317 Quartz定时任务默认都是并发执行 ...
- js兼容火狐显示上传图片预览效果
js兼容火狐显示上传图片预览效果[谷歌也适用] <!doctype html> <html> <head> <meta content="text/ ...
- Python 爬虫入门(四)—— 验证码上篇(主要讲述验证码验证流程,不含破解验证码)
本篇主要讲述验证码的验证流程,包括如何验证码的实现.如何获取验证码.识别验证码(这篇是人来识别,机器识别放在下篇).发送验证码.同样以一个例子来说明.目标网址 http://icp.alexa.cn/ ...
- 中南大学2018年ACM暑期集训前期训练题集(入门题) Q: Simple Line Editor
数据有毒,一个一个读字符是错,整个字符串读入,一次就A了. 总之,数据总是没有错的,还是对c++了解地不够深刻,还有,在比赛中,一定要有勇气重构代码 错误代码: #include<iostrea ...
- python的异常处理try/except 万能处理exception
1.try方式 try: age=int(input(">>>")) int(age)#主逻辑 num=input(">>>>& ...
- SQL2008.sa'登录失败(错误18456)
其实不仅仅是2008,高版本的也有这个问题.网上一大堆解决这个问题的方法,无非就是启动这个,启用那个.这里我讲些不一样的. 当你开启了TCP协议之后,需要去Windows防火墙哪里写一下入站规则,如图 ...
- Premiere导入视频之后音频轨没有内容
我用手机录的视频,在导入premiere新建序列之后呢并没有声音啊,音频轨没有内容.去贴吧里面问啊什么的都不靠谱,热心回答的人也不多.想学到东西,在这个年代如果你不愿意掏钱的话就只能靠一个办法:搜索. ...
- 在IIS上启用Gzip压缩(HTTP压缩)
一.摘要 本文总结了如何为使用IIS托管的网站启用Gzip压缩, 从而减少网页网络传输大小, 提高用户显示页面的速度. 二.前言. 本文的知识点是从互联网收集整理, 主要来源于中文wiki. 使用Y ...
- zabbix微信预警出现的问题
系统环境:centos7.3 zabbix_server: 3.0.3 3.0.6 问题描述 zabbix预警突然不能发送微信,需要修复 排查步骤 1. 检查微信企业平台应用的key是否过期,结果没过 ...
- HDU - 4901 The Romantic Hero(dp)
https://vjudge.net/problem/HDU-4901 题意 给n个数,构造两个集合,使第一个集合的异或和等于第二个集合的相与和,且要求第一个集合的元素下标都小于第二个集合的元素下标. ...

