处理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操作即可。
原文地址:https://www.cnblogs.com/winter-shadow/p/10241860.html
时间: 2024-10-07 20:09:17