webpack5零基础入门-5使用webpack处理stylus文件

1.需要下载一个包

npm i stylus-loader

2.功能介绍

stylus-loader:负责将stylus文件编译成css文件

3.配置:

复制代码
const path = require('path');//nodejs用来处理路径问题的模块

module.exports = {
    /**入口 */
    entry: './src/main.js',
    /**输出 相对路径*/
    output: {
        /**文件输出路径 绝对路径*/
        //__dirname 表示当前文件的文件夹目录
        path: path.resolve(__dirname, 'dist'),
        /**文件名 */
        filename: 'dist.js'
    },
    /**加载器 */
    module: {
        rules: [
            //loader的配置
            {
                /**test 代表要检测的文件 */
                test: /\.css$/, //只检测.css文件
                use: ['style-loader', 'css-loader'],//对检测到文件使用哪些loader
            },
            {
                test: /\.less$/,//只检测.less文件
                //loader:'xxx',loader只能使用一个loader,use可以使用多个loader
                use: ['style-loader', 'css-loader', 'less-loader'],//对检测到文件使用哪些loader
            },
            {
                test: /\.s[ac]ss$/,//只检测.sass文件
                use: ['style-loader', 'css-loader', 'sass-loader'],
            },
            {
                test: /\.styl$/,//只检测.stylus文件
                use: ['style-loader', 'css-loader', 'stylus-loader']
            }
        ]
    },
    /**插件 */
    plugins: [
        //plugin配置
    ],
    /**模式 */
    mode: 'development'
}

在module的rules里新增一条规则

4.新增stylus文件

复制代码
.box
 width 100px
 height 100px
 background-color:brown

在main.js中引入

复制代码
import sum from "./js/sum";
import count from "./js/count";
//要想webpack打包资源,必须引入该资源
import "./css/file.css"
import "./css/box.less"
import "./css/box2.scss"
import "./css/box3.styl"
console.log(count(1, 2));
console.log(sum(1, 2, 3, 4, 5))

在html中使用box3样式

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>webpack</title>
</head>
<body>
    <script src="../../dist/dist.js"></script>
    <h1>hell webpack</h1>
    <div class="red"></div>
    <div class="box"></div>
    <div class="box2"></div>
    <div class="box3"></div>
</body>
</html>

执行npx webpack打包

打包成功

查看html文件

相关推荐
喝拿铁写前端6 分钟前
Vue 组件通信的两种世界观:`.sync` 与普通 `props` 到底有什么不同?
前端·vue.js·前端框架
美酒没故事°22 分钟前
npm源管理器:nrm
前端·npm·npm源
用户221520442780022 分钟前
vue3组件间的通讯方式
前端·vue.js
三十_A40 分钟前
【实录】使用 patch-package 修复第三方 npm 包中的 Bug
前端·npm·bug
下位子1 小时前
『AI 编程』用 Claude Code 从零到一开发全栈减脂追踪应用
前端·ai编程·claude
tyro曹仓舒1 小时前
Vue单文件组件到底需不需要写name
前端·vue.js
用户47949283569151 小时前
面试官:讲讲2FA 双因素认证原理
前端·后端·安全
乐影1 小时前
TS 模板字符串类型:从基础到进阶的类型编程魔法
前端·typescript
龙在天1 小时前
CSS 属性值的计算与过程
前端
云鹤_1 小时前
【Amis源码阅读】组件注册方法远比预想的多!
前端·低代码