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 ...
随机推荐
- 同步任务 AsyncTask 介绍
AsyncTask 顾名思义,是在我们需要执行同步任务的时候使用,这个类可以做一些后台操作,然后将结果返回的UI来,因为这个类本身封装了Handler和Thread,所以我们不需要直接去操作这两个类, ...
- shell条件测试语句
- setclock - 用系统时间来设置硬件时间
总览 setclock 描述 setclock 用当前系统时钟存储的时间设置系统的硬件时间. 它先读取 /etc/sysconfig/clock 的时间格式, 时间存储前应该转化成这种格式. Red ...
- React 组件嵌套 父子关系
代码实例; <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset=" ...
- Qt 【widget如何铺满窗口】
刚接触qt不是很长时间,都是使用ui拖拽控件实现界面,然后发现有些问题就是控件一旦多了起来,拖拽就不好控制了,然后就转而使用纯代码开发. 一下是碰到第一个问题: 创建一个MainWidget; Mai ...
- JSON和fastjson
一.JSON 语法规则: 数据在名称/值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 名称/值对-->对象-->数组 JSON 名称/值对 JSON 数据的书写格式是:名称/值对. ...
- Java8 使用stream 实现wordcount
案例: public static void main(String[] args) { List<String> items = Arrays.asList("apple&qu ...
- 文本处理工具——sed基础
一sed介绍 三剑客是grep,sed,awk,功能都很强大. 其中sed是Stream EDitor,流编辑器 行,编辑器的简写,它一次处理一行内容. sed的强大在于可以对文件进行修改,很适合在脚 ...
- shell脚本编程运算
一算术运算 bash中的算术运算:help let+, -, *, /, %取模(取余), **(乘方)实现算术运算:(1) let var=算术表达式(2) var=$[算术表达式](3) var= ...
- ShellListView
過濾ShellListView顯示的檔案 有關這方面的元件你可以在Win3.中找到相關元件 你可以使用四個元件搭配應該就可以你所需要的功能 DriveComboBox1.FilterComboBox1 ...