Vue系列之 => webpack处理样式文件
处理css文件
安装
npm i style-loader css-loader -D
main.js
import $ from 'jquery' //Es6中导入模块的方式
import './css/index.css'
// import './css/index.css' webpack默认只能打包处理js类型文件
//如果需要处理非js类型的文件,我们需要手动安装一些合适的第三方loader加载器
// 1、打包处理css文件,需要安装 npm i style-loade css-loader -D
// 2、打开webpack.config.js这个配置文件,在里面新增一个配置节点,叫做module它是一个对象
//然后在module这个对象上有个rules属性,这个rules属性是个数组;这个数组中存放了所有第三方
//文件的匹配和处理规则 $(function(){
$('li:odd').css('backgroundColor','red');
$('li:even').css('backgroundColor',function(){
return 'skyblue';
});
})
webpack.config.js
const path = require('path');
//启用热更新的第二步,导入webpack
const webpack = require('webpack');
//导入在内存中生成html页面的插件,只要是插件,都要放到plugins节点中去
const htmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {
entry: path.join(__dirname, './src/main.js'),
output: {
path: path.join(__dirname, './dist'),
filename: 'bundle.js'
},
devServer: { //这是配置webpack-dev-server命令参数的第二种形式
open: true, //自动打开浏览器
port: 3100, //设置端口
contentBase: 'src', //指定托管的根目录
hot: true //启用热更新的第一步
},
plugins: [ //配置插件的节点
//启用热更新第三步
new webpack.HotModuleReplacementPlugin(), //new一个热更新的模块对象
new htmlWebpackPlugin({ //创建一个在内存中生成html页面的插件
template : path.join(__dirname,'./src/index.html'), //指定模板页面,根据指定的路径生成内存中的页面
filename : 'index.html' //指定内存中生成的页面的名称
})
],
module : { //这个节点,用于配置所有第三方模块加载器
rules : [ //所有第三方模块的匹配规则
{ test:/\.css$/,use:['style-loader','css-loader'] } //配置处理.css文件的第三方loader规则
//注意:webpack处理第三方文件类型的过程:
//1,发现这个要处理的文件不是js文件,就去配置文件中查找有没有对应的第三方Loader规则
//2,如果能找到对应的规则,就会调用对应的Loader处理这种文件类型
//3, 在调用loader的时候,是从后往前调用的
//4,当最后的一个Loader调用完毕,会把处理的结果直接交给webpack进行打包合并,最终输出到bundle.js中去。
]
}
}
处理less文件
npm i less -D
npm i less-loader -D
main.js文件
import $ from 'jquery' //Es6中导入模块的方式
import './css/index.css'
import './css/index.less'
// import './css/index.css' webpack默认只能打包处理js类型文件
//如果需要处理非js类型的文件,我们需要手动安装一些合适的第三方loader加载器
// 1、打包处理css文件,需要安装 npm i style-loade css-loader -D
// 2、打开webpack.config.js这个配置文件,在里面新增一个配置节点,叫做module它是一个对象
//然后在module这个对象上有个rules属性,这个rules属性是个数组;这个数组中存放了所有第三方
//文件的匹配和处理规则 $(function(){
$('li:odd').css('backgroundColor','red');
$('li:even').css('backgroundColor',function(){
return 'skyblue';
});
})
webpack.config.js文件
const path = require('path');
//启用热更新的第二步,导入webpack
const webpack = require('webpack');
//导入在内存中生成html页面的插件,只要是插件,都要放到plugins节点中去
const htmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {
entry: path.join(__dirname, './src/main.js'),
output: {
path: path.join(__dirname, './dist'),
filename: 'bundle.js'
},
devServer: { //这是配置webpack-dev-server命令参数的第二种形式
open: true, //自动打开浏览器
port: 3100, //设置端口
contentBase: 'src', //指定托管的根目录
hot: true //启用热更新的第一步
},
plugins: [ //配置插件的节点
//启用热更新第三步
new webpack.HotModuleReplacementPlugin(), //new一个热更新的模块对象
new htmlWebpackPlugin({ //创建一个在内存中生成html页面的插件
template: path.join(__dirname, './src/index.html'), //指定模板页面,根据指定的路径生成内存中的页面
filename: 'index.html' //指定内存中生成的页面的名称
})
],
module: { //这个节点,用于配置所有第三方模块加载器
rules: [ //所有第三方模块的匹配规则
{
test: /\.css$/,
use: ['style-loader', 'css-loader']
}, //配置处理.css文件的第三方loader规则
{
test: /\.less$/,
//配置处理.less文件的第三方文件规则
use: ['style-loader','css-loader','less-loader']
}
]
}
}
处理scss文件
安装 npm i sass-loader -D && npm i node-sass -D (在安node-sass要使用cnpm,npm安装极容易失败)
其他配置按照css和less操作即可。
Vue系列之 => webpack处理样式文件的更多相关文章
- Vue系列之 => webpack结合vue使用
安装 npm i vue -S , 在html页面中放一个容器绑定到el上. 修改webpack.config.js , 在与entry , output节点平级加上 resolve 节点. res ...
- Vue系列之 => webpack的url loader
安装: npm i url-loader file-loader -D //url-loader内部依赖file-loader webpack.config.js const path = requ ...
- Vue系列之 => webpack基础使用
webpack安装方式 1,运行 npm i webpack -g 全局安装. 2,在项目根目录中运行 npm i webpack --save-dev 安装到项目依赖中 项目目录 进入src运行, ...
- vue系列之webpack
webpack 地址: https://github.com/vuejs-templates/webpack 注意里面的template,用webpack创建的项目,结构就是这样的
- Vue系列(三):组件及数据传递、路由、单文件组件、vue-cli脚手架
上一篇:Vue系列(二):发送Ajax.JSONP请求.Vue生命周期及实例属性和方法.自定义指令与过渡 一. 组件component 1. 什么是组件? 组件(Component)是 Vue.js ...
- webpack打包vue项目之后生成的dist文件该怎么启动运行
亲测,webpack打包vue项目之后生成的dist文件可以部署到 express 服务器上运行. 我的vue项目结构如下: 1. 进入该vue项目目录,打开git bash,执行:npm run b ...
- Webpack实战(五):轻松读懂Webpack如何分离样式文件
在上一篇文章中我给大家分享了预处理器(loader),里面讲到了style-loader 和css-loader,有关样式引入的问题,但是上面的样式文件只是引入到style标签里面,并不是我想要的样式 ...
- 【webpack】-- 样式加载
加载css需要用到css-loader和style-loader css-loader将@import 和 url 处理成正规的ES6 import ,如果@import指向的是一个外部资源,css- ...
- vue脚手架使用swiper /引入js文件/引入css文件
1.安装vue-cli 参考地址:https://github.com/vuejs/vue-cli 如果不使用严格语法需要在后三项打no:(加了挺头疼的,老是报错,但是对自己的代码规范性也是有很大的帮 ...
随机推荐
- 一些有用的huginn Agent
具体API地址 https://huginnio.herokuapp.com/agents 貌似这些Agent都可以按照频率和定时的时间点来触发, 1.Attribute Difference Age ...
- linux抓包工具tcpdump使用总结
tcpdump采用命令行方式对接口的数据包进行筛选抓取,其丰富特性表现在灵活的表达式上 1.格式 # tcpdump --help tcpdump version 4.1-PRE-CVS_2012_0 ...
- python底层原理
有同学问到了一个问题,python中存储变量是通过内存地址来存储,那么python又是如何去判断内存中的地址是什么数据类型的呢.经过查找,找到这篇文章: 原博客地址:http://www.cnblog ...
- express 遇到问题 - Error: Can't set headers after they are sent
在node配合mongodb,链接数据库,查询所有数据2步操作,都有响应数据返回是会出现 Error: Can't set headers after they are sent,的报错 故障原因:引 ...
- Do-Now—团队冲刺博客四
各个成员今日完成的任务 侯泽洋:完成奖励页面设计,完成奖励从云端拉取到本地:完成奖励从云端拉取到本地 周亚杰:冲刺博客,个人中心设计(未完成) 王志伟:积分页面设计:积分页面设计 仇夏:树苗成长过程设 ...
- Object类的方法
一 Object:类Object是类层次结构的跟类,每个类都使用Object作为超类,每个类都是直接或者间接的继承自Object类. Object类的方法: ①public int hashCode( ...
- ko学习二,绑定语法
补充上个监控数组ko.observableArray() ko常用的绑定:text绑定,样式绑定,数据数组绑定. visible 绑定.属性绑定 1.visible绑定 <div data-bi ...
- h5 canvas与SVG的比较
画布 什么是canvas? HTML5的canvas标签使用JavaScript可以在网页上绘制图像,画布为一个矩形. 画布本身没有绘制能力,只能通过脚本来绘制. 画布例子: <canvas i ...
- STS的安装以及IDEA安装和破解过程
一.STS的下载 1·下载地址:直接百度搜索STS,选择Download STS 3 2.选择电脑对应的版本 直接下载 3.安装包解压后在有jdk的情况下就可以直接使用 二.IDEA的安装 下载网址: ...
- CentOS系统下安装python3+Django
转载:CentOS系统下安装python3+Django 1.首先用yum安装下vim,因为CentOS 7可能根本没自带完整vim,经常出现输入乱码:yum -y install vim 2.安装开 ...