webpack导入css及各项loader
1. webpack导入css
1) 下载相关的加载器 npm install style-loader css-loader -D
2)将index.css引入到mian.js中
import './css/index.css'
3) 配置webpack.config.js
使用module属性
const path = require('path')
module.exports = {
mode: 'development',
entry:path.join(__dirname,'./src/main.js'),//打包的那个文件
output:{
path:path.join(__dirname,'./dist'),
filename :'bundle.js'
},
devServer:{
open:'true',
port:'8081',
contentBase:'src'
},
module:{
rules:[
test: {'/\.css$/',use['style-loader','css-loader']}
]
}
}
重启运行 `npm run dev`
{ test: /\.less$/, use: ['style-loader', 'css-loader', 'less-loader'] },
{ test: /\.scss$/, use: ['style-loader', 'css-loader', 'sass-loader'] },
2.webpack导入图片
由于导入图片需要使用url地址,所以需要引入 `url-loader` 和 `file-loader` ( `file-loader` 依赖于 `url-loader` 所以需要一起引入)
npm i url-loader file-loader -D
.box{
background-image:url('../Images/1.jpg')
}
配置webpack.config.js
module:{
rules:[
{test:/\.css$/,use:['style-loader','css-loader']},
{test:/\.(jpg|png|gif|bmp|jpeg)$/,use: 'url-loader?limit=4000&name=[hash:8]-[name].[ext]' },
//如果图片大于limit的大小则不会被解析成base64
//name设置是否重命名图片, [name].[ext]是保持引入的时候的图片的名字,[hash:8]-[name].[ext]是自动在图片原名前加一个随机的hash值,防止图片重复
]
}
3.webpack中引入babel
对于部分浏览器不识别的高级的ES6语法,借助 `babel` 来转化
npm install babel-core babel-loader babel-plugin-transform-runtime -D //转换工具
npm install babel-preset-env babel-preset-stage-0 -D //语法
在webpack.config.js中配置
module:{
rules:[
{test:/\.js$/,use:'babel-loader',exclude:/node_modules/}
//exclude是去掉不需要转换的包
]
}
在项目的根目录下新建 `.babelrc` 的 `babel` 配置文件(JSON格式,需要符合JSON规范)
{
"plugins":["transform-runtime"],
"presets":["env","stage-0"]
}
4.webpack中使用模板,需要解析.vue文件
npm install vue-loader vue-template-compiler -D
在webpack.config.js中的配置
const VueLoaderPlugin = require('vue-loader/lib/plugin');
module.exports = {
plugins:[
new VueLoaderPlugin(),
],
module:{
rules:[
{test:/\.vue$/,use:'vue-loader'},
]
},
}
高版本的webpack使用vue-loader的时候都需要配置下插件(标蓝部分)
webpack导入css及各项loader的更多相关文章
- webpack配置css相关loader注意先后顺序
一.问题描述 在webpack3中,引入animate.css失败. 二.问题分析 1.难道是入口main.js引用方式不对? import animate from 'animate.css' 2. ...
- CSS预编译与PostCSS以及Webpack构建CSS综合方案
CSS全称Cascading Style Sheets(层叠样式表),用来为HTML添加样式,本质上是一种标记类语言.CSS前期发展非常迅速,1994年哈肯·维姆·莱首次提出CSS,1996年12月W ...
- webpack 处理CSS
1.安装插件 npm i style-loader css-loader --save-dev npm i postcss-loader --save-dev npm i autoprefixer - ...
- react&webpack使用css、less && 安装原则 --- 从根本上解决问题。
在webpack-react项目中,css的使用对于不同人有不同的选择,早起是推荐在jsx文件中使用 css inline js的,但是这种方法要写很多对象来表示一个一个的标签,并且对于这些对象,我们 ...
- webpack教程——css的加载
首先要安装css的loader npm install css-loader style-loader --save-dev 然后在webpack.config.js中配置如下代码 意思是先用css- ...
- webpack抽取CSS文件与CSSTreeShaking
webpack抽取CSS文件 CSSTreeShaking 一.webpack抽取CSS文件 抽取CSS文件的插件:mini-css-extract-plugin npm install --save ...
- webpack 提取css成单独文件
webpack 提取css成单独文件 // 用来拼接绝对路径的方法 const {resolve} = require('path') const HtmlWebpackPlugin = requir ...
- link和@import导入css文件的区别
(二者的区别其实是基础问题,但由于本人经常会忽略掉使用@import导入css文件这种方式,所以记录下来增加印象^^) 首先二者的引入方式: link:<link rel="style ...
- 如何导入css和js?
导入css <link rel="stylesheet" href="css路径" type="text/css"> 导入js, ...
随机推荐
- c++ 动态判断基类指针指向的子类类型(typeid)
我们在程序中定义了一个基类,该基类有n个子类,为了方便,我们经常定义一个基类的指针数组,数组中的每一项指向都指向一个子类,那么在程序中我们如何判断这些基类指针是指向哪个子类呢? 本文提供了两种方法 ( ...
- Matlab如何循环读取文件
循环读取图片第一种方法①List =dir('*.jpg'); %如需其它图片格式支持,可以自己[重载dir()]函数,实现查找所有图片文件的功能,%如果图片是其它路径,可以用 ["路径&q ...
- electron安装+运行+打包成桌面应用+打包成安装文件+开机自启动
1.初始化node项目,生成package.json文件 npm init 2.安装electron,并保存为开发依赖项 npm install electron -D 3.根目录下新建index.j ...
- [JS] ECMAScript 6 - Set & Map : compare with c#
Ref: Set 和 Map 数据结构 Day 0 - 1所学
- sklearn中的数据集的划分
sklearn数据集划分方法有如下方法: KFold,GroupKFold,StratifiedKFold,LeaveOneGroupOut,LeavePGroupsOut,LeaveOneOut,L ...
- Don't forget to Cherish
Watch the video Cherish time, Cherish memories, Cherish tears, Cherish smiles, Cherish friends, Cher ...
- Unity3D 优化NGUI纹理
原理就是将一张rgba 32的分成两张纹理:一张平台压缩不带alpha和一张为原图1/4大小的压缩图存储alpha信息(用r分量当alpha值),然后修改原材质的Shader传入这两张纹理. 代码如下 ...
- play mp3 in c#
using System; using System.Runtime.InteropServices; using System.Text; using System.IO; using System ...
- Java NIO学习笔记---I/O与NIO概述
文章目录: 1.什么是IO 2.什么是Java NIO 3.I/O常见概念 4.为什么使用NIO 5.IO VS NIO 一.什么是IO I/O 或者输入/输出 , 指的是计算机与外部世界或者一个程序 ...
- apache 二级域名设置完整步骤
步骤如下: 1. 你要拥有一个有泛域名解析的顶级域名,例如:abc.com 在dns服务上设置,域名服务商都提供此服务 www.abc.com 指向服务器IPabc.com ...