webpack--前端自动化工具
一、下载与安装
//全局安装webpack (不推荐)
npm i webpack -g
npm i webpack-cli -g //局部安装(推荐)
npm i webpack -D
npm i webpack-cli -D npx webpack -v 查看webpack的版本号 注:也可以使用cnpm安装。
二、webpack.config.js文件的配置
//webpack的配置文件,文件名不能改!!!
//万一想改的话,就是 npx wenpack --config webpack.con.js 后面的是更改后的名称
const path=require('path') //引入此模块的目的就是,配置出口文件和入口文件的根路径;
module.exports={
//'development' or 'production' 开发环境配置,第一个是开发环境,production是生产环境!!
mode:"development",
//配置默认的出口文件/入口文件
//首先找到入口文件;
entry:{ //entry入口文件,一个入口文件的话直接写,别写main对象;
main:path.join(__dirname,'./index.js')
},
//出口文件;
output:{
filename:'bundle.js', //出口文件的名,随意;
path:path.join(__dirname,'./dist')
},
//module--模块解析,webpack因为只认识js
module:{
rules:[{
//正则表达式匹配
test:/\.css$/,
use:[
"style-loader", //语法解析;
"css-loader" //解析文件依赖;因为可能会有多个css文件
]
},
{
test:/\.styl$/ , //styl文件的配置;cnpm i stylus-loader stylus -D
use:[
"style-loader",
"css-loader",
"stylus-loader" , //解析成正常css;
//注意顺序规律,从下而上;不能乱;
]
},
//图片解析;
{
test:/\.(jpg|png|svg|gif|jpeg)$/,
use:[
{
loader:"url-loader", //解析图片和解析文件;
//cnpm i url-loader file-loader -D
//url-loader基于file-loader -D
options:{ //图片的配置项
limit:10240
//用来控制当前的文件大小,如果当前文件大小超过所设置的文件大小,会把文件生成一个新的文件插入到dist下,如果比当前所设置的小,会放到打包出来的文件下,以bate64位的形式;
}
}
]
},
]
}
} 注意:css-loader style-loader 这些都是需要安装的
三、ES6转ES5 (babel中文文档)设置----webpack
const path = require('path');
//引入HTML插件;
const HtmlWebPackplugin = require('html-webpack-plugin')
//下载:npm install --save-dev html-webpack-plugin
const { CleanWebpackPlugin } = require('clean-webpack-plugin')
//下载:cnpm i clean-webpack-plugin -D 会随着webpack版本的改变,配置方法也会改变。
module.exports = {
mode: 'development',
devtool:'cheap-eval-source-map', //映射错误
entry: {
main: path.join(__dirname, 'index.js'),
},
output: {
filename: 'es6.js',
path: path.join(__dirname, './dist'),
},
//模块解析;
module: {
rules: [
{
test: /\.css$/,
use: [
"style-loader",
"css-loader"
]
},
//es6转es5
//安装:npm install --save-dev babel-loader @babel/core
{
test: /\.js$/,
exclude: /node_modules/,
loader: "babel-loader"
}
]
},
//插件,是一个数组。
plugins: [
new HtmlWebPackplugin({
template: "./index.html" //依那个HTML文件为模板,就在此写那个文件
}),
new CleanWebpackPlugin()
//注意插件的先后顺序!!!不能变;
]
}
四、 .babelrc 文件的配置
{
"presets": [["@babel/preset-env",{
"useBuiltIns": "usage" //在哪用就在那里转;
}]]
}
直接复制到该文件里面即可!
webpack--前端自动化工具的更多相关文章
- webpack前端构建工具学习总结(四)之自动化生成项目中的html页面
接续上文:webpack前端构建工具学习总结(三)之webpack.config.js配置文件 插件的介绍文档:https://www.npmjs.com/package/html-webpack-p ...
- 前端自动化工具gulp自动添加版本号
之前,我介绍了学习安装并配置前端自动化工具Gulp,觉得gulp确实比grunt的配置简单很多,于是我决定再深入学习一下gulp,就去网上查了资料,发现gulp还可以自动添加版本号,这个功能就为我平时 ...
- 学习安装并配置前端自动化工具Gulp
Gulp和所有Gulp插件都是基于nodeJs来运行的,因此在你的电脑上需要安装nodeJs,安装过程请移驾安装并配置前端自动化工具--grunt.安装完成后,通过运行cmd进入DOS命令窗口,如图: ...
- Node.js前端自动化工具:gulp
前端自动化工具 -- gulp 使用简介 gulp是基于流的前端自动化构建工具. 之前也谈到了 grunt的用法,grunt其实就是配置+配置的形式. 而gulp呢,是基于stream流的形式,也就是 ...
- webpack前端构建工具学习总结(一)之webpack安装、创建项目
npm是随nodeJs安装包一起安装的包管理工具,能解决NodeJS代码部署上的很多问题: 常见的使用场景有以下几种: 允许用户从NPM服务器下载别人编写的第三方包到本地使用. 允许用户从NPM服务器 ...
- webpack前端构建工具学习总结(二)之loader的使用
Webpack 本身只能处理 JavaScript 模块,如果要处理其他类型的文件,就需要使用 loader 进行转换. Loader 可以理解为是模块和资源的转换器,它本身是一个函数,接受源文件作为 ...
- webpack前端自动化构建工具
博主不易,不求赞赏,希望把自己遇到的难点写出来,以及希望自己能有能力写出一篇不错的博文. 前端构建工具本人 bootstrap+jquery用gulp vue+element 用webpack 本人最 ...
- 前端自动化工具 -- Gulp 使用简介
gulp是基于流的前端自动化构建工具. 之前也谈到了 grunt的用法,grunt其实就是配置+配置的形式. 而gulp呢,是基于stream流的形式,也就是前一个函数(工厂)制造出结果,提供后者使用 ...
- gulp 前端自动化工具
一开篇 在前端开发的过程中,我们经常会碰到压缩.合并.图片script 等,于是就有了gulp 前端自动化构建工具,它能帮你在前端开发中,节省时间. 1,安装 node.js 因为gulp 构建工具是 ...
- 前端自动化工具 -- gulp https://angularjs.org/
gulp是基于流的前端自动化构建工具. gulp是基于stream流的形式,也就是前一个函数(工厂)制造出结果,提供后者使用. 同样的,也是包括基本用法和各插件的使用. 二.基本用法--插件使用 gu ...
随机推荐
- /etc/fstab自动挂载文件
装了Windows 10和Ubuntu双系统,想把win10下的“文娱“盘自动开机挂载到Ubuntu上. 首先你看一下/etc/fstab这个文件喽: 依葫芦画瓢呗.首先看看你要挂载的硬盘是哪一块: ...
- eclipse中创建的spring-boot项目在启动时指定加载那一个配置文件的设置
步骤如下:鼠标点击项目右键—>Run As—>Run Configurations—>Java Application (如下图) 鼠标右键点击Java Application——— ...
- python时间日期处理
一.模块介绍: 1.time模块接近操作系统,模块中的大多数函数是调用了所在平台C library的同名函数,部分函数式平台相关的:基于Unix Timestamp,能表述的日期范围被限定在 1970 ...
- Goldengate 应用环境 mysql to oracle
前言 一个需求,mysql的某些表,实时同步至oracle,于是就产生了这篇文章,安装过程中,走了些弯路,原因是没太深刻理解,官方提供安装步骤所代表的意义. 环境 源端:mysql-server 5. ...
- Sass--嵌套选择器
Sass 中还提供了选择器嵌套功能,但这也并不意味着你在 Sass 中的嵌套是无节制的,因为你嵌套的层级越深,编译出来的 CSS 代码的选择器层级将越深,这往往是大家不愿意看到的一点.这个特性现在正被 ...
- 如何加快Vue项目的开发速度
如何加快Vue项目的开发速度 本文摘自奇舞周刊,侵权删. 现如今的开发,比如内部使用的管理平台这种项目大都时间比较仓促.实际上来说,在使用了webpack + vue 这一套来开发的话已经大大了提高了 ...
- vue框架中什么是MVVM
前端页面中使用MVVM的思想,即MVVM是整个视图层view的概念,属于视图层的概念. MVVM是前端视图层的分层开发思想,将页面分成了Model, View,和VM:其中VM是核心,因为VM是V和M ...
- OpenCV常用基本处理函数(5)图像模糊
2D卷积操作 cv.filter2D() 可以让我们对一幅图像进行卷积操作, 图像模糊(图像平滑)使用低通滤波器可以达到图像模糊的目的.这对与去除噪音很有帮助.其实就是去除图像中的高频成分(比如:噪音 ...
- spring无法接收上传文件
现象 前端用ajax方式提交表单,代码类似于下面的例子. var formData = new FormData(); // HTML 文件类型input,由用户选择 formData.append( ...
- Windows服务 --- SqlDependency的使用
1 启用当前数据库的 SQL Server Service Broker a 检查Service Broker 是否开启 SELECT is_broker_enabled FROM sys.d ...