【快速搞定Webpack5】修改输出文件目录及自动清理上次打包文件(五)

这篇具有很好参考价值的文章主要介绍了【快速搞定Webpack5】修改输出文件目录及自动清理上次打包文件(五)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

介绍

默认情况下webpack打包后,我们的图片和js等文件都会被打包到dist目录下,文件多了混淆在一起一方面不利于文件的查找和管理,另外一方面看上去也不美观。
所以今天我们学习的内容就是控制输出后的文件进入不同的目录。
【快速搞定Webpack5】修改输出文件目录及自动清理上次打包文件(五),实战,前端大杂烩,webpack,前端,前端框架,js

一、配置

新增47-49行配置

const path = require("path");

module.exports = {
    // 入口
    entry: "./src/main.js",  // 需要用相对路径
    // 输出
    output: {
        // 文件的输出路径
        // __dirname nodejs的变量,代表当前文件的文件夹目录
        path: path.resolve(__dirname, "dist"),   // 需要用绝对路径 需要用的Nodejs的核心模块 path,专门处理路径问题
        // 文件名
        filename: "main.js",
        // filename: "js/main.js",
    },
    // 加载器
    module: {
        rules: [
            // loader的配置
            {
                test: /\.css$/,     // 只检测.css文件
                use:[
                    // 执行顺序,从右到左,从下到上
                    "style-loader", // 将js中的css通过创建style标签添加到html文件中生效
                    "css-loader",    // 将css资源编译成commonJs的模块到js中
                ] 
            },
            {
                test: /\.less$/,     // 只检测.less文件
                // loader: "xxx", // 配置中只能使用一个loader,use可以多个
                use:[
                    // 执行顺序,从右到左,从下到上
                    "style-loader", // 将js中的css通过创建style标签添加到html文件中生效
                    "css-loader",    // 将css资源编译成commonJs的模块到js中
                    "less-loader",    // 将less资源编译成css
                ]
            },
            {
                test: /\.(png|jpe?g|gif|webp)$/,
                type: "asset",  // 这里使用asset相当于就是webpack4中使用了url-loader来处理
                parser: {
                    dataUrlCondition: {
                        // 设置小于15k 使用base64
                        // 优点减少请求数量 缺点:文件体积变大
                        maxSize: 15 * 1024, 
                    }
                },
              			// 输出图片名称
                		// [hash:10]hash取值前10位 [ext]文件后缀名 [query]携带参数 ?key=123&m=aaa
                    generator: {
                        filename: 'images/[hash][ext][query]'
                    }

            },
        ],
    },
    // 插件
    plugins: [
        // plugin的配置
    ],
    // 模式
    mode: "development",
};

官方手册参考
【快速搞定Webpack5】修改输出文件目录及自动清理上次打包文件(五),实战,前端大杂烩,webpack,前端,前端框架,js

二、资源输出

npm webpack

三、效果展示

【快速搞定Webpack5】修改输出文件目录及自动清理上次打包文件(五),实战,前端大杂烩,webpack,前端,前端框架,js

介绍

前面学习过程中,我们发现,我们每次打包都需要手动删除dist目录里的文件,这样操作起来比较麻烦。
今天我们学习的内容就是来解决这个问题的,打包前先自动删除dist目录(递归)然后再进行新的文件打包生产。

三、配置

新增第12行

module.exports = {
    // 入口
    entry: "./src/main.js",  // 需要用相对路径
    // 输出
    output: {
        // 文件的输出路径
        // __dirname nodejs的变量,代表当前文件的文件夹目录
        path: path.resolve(__dirname, "dist"),   // 需要用绝对路径 需要用的Nodejs的核心模块 path,专门处理路径问题
        // 文件名
        filename: "main.js",
        // filename: "js/main.js",
        clean: true,
    },
  ...
  ...
}

配置完毕后,大家可以将原本的dist目录中的文件名改改,再试试打包效果。文章来源地址https://www.toymoban.com/news/detail-836081.html

到了这里,关于【快速搞定Webpack5】修改输出文件目录及自动清理上次打包文件(五)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【快速搞定Webpack5】基本配置及开发模式介绍(二)

    在开始使用 webpack 之前么,我们需要对 Webpack 的配置有一定的认识。 1. enty(入口) 指示 webpack 从哪个文件开始打包 2. output(输出) 指示 webpack 打包完的文件输出到哪里去,如何命名等 3. loader(加载器) webpack 本身只能处理 js、json 等资源,其他资源需要借助 loader 、 webp

    2024年02月21日
    浏览(38)
  • webpack5基础--12_开发服务器&自动化

    每次写完代码都需要手动输入指令才能编译代码,太麻烦了,我们希望一切自动化 webpack.config.js 注意运行指令发生了变化 并且当你使用开发服务器时,所有代码都会在内存中编译打包,并不会输出到 dist 目录下。 开发时我们只关心代码能运行,有效果即可,至于代码被编译

    2024年03月10日
    浏览(102)
  • Webpack5入门到原理13:开发服务器&自动化

    每次写完代码都需要手动输入指令才能编译代码,太麻烦了,我们希望一切自动化 npm i webpack-dev-server -D webpack.config.js 注意运行指令发生了变化 并且当你使用开发服务器时,所有代码都会在内存中编译打包,并不会输出到 dist 目录下。 开发时我们只关心代码能运行,有效果即

    2024年01月20日
    浏览(45)
  • Webpack5入门到原理15:提取 Css 成单独文件

    Css 文件目前被打包到 js 文件中,当 js 文件加载时,会创建一个 style 标签来生成样式 这样对于网站来说,会出现闪屏现象,用户体验不好 我们应该是单独的 Css 文件,通过 link 标签加载性能才好 webpack.prod.js webpack.prod.js 我们可以在 package.json 文件中添加 browserslist 来控制样式

    2024年01月24日
    浏览(58)
  • 【快速搞定Webpack4】基本配置及开发模式介绍(二)

    在开始使用 webpack 之前么,我们需要对 Webpack 的配置有一定的认识。 1. enty(入口) 指示 webpack 从哪个文件开始打包 2. output(输出) 指示 webpack 打包完的文件输出到哪里去,如何命名等 3. loader(加载器) webpack 本身只能处理 js、json 等资源,其他资源需要借助 loader 、 webp

    2024年02月21日
    浏览(40)
  • 《基于 Vue 组件库 的 Webpack5 配置》3.将 CSS 提取到单独的文件

    使用 webpack 插件 mini-css-extract-plugin 需要额外安装 npm i mini-css-extract-plugin@latest -D ; 同时打包 js 和 css 文件时,可参考 entry 高级用法; package.json 的配置如下

    2024年02月11日
    浏览(43)
  • 《基于 Vue 组件库 的 Webpack5 配置》6.将字体库和图片等静态资料,编译后打包至指定文件夹

    参考 Rule.generator.filename package.json 的配置如下

    2024年02月11日
    浏览(67)
  • webpack5基础使用(1)-介绍、打包文件、处理样式资源(css、less)文件、配置文件内容、eslint工具检测语法、babel工具es6语法转es5

    webpack5是一个 静态资源打包工具 。 会以一个或多个文件作为打包的入口,将整个项目所有文件编译组合成一个或多个文件输出出去。输出的文件就是编译好的文件,就可以直接在浏览器端运行了 进一步来说就是: 当开发时,肯定会使用框架、es6模块化语法、less/sass等css预处

    2024年02月03日
    浏览(54)
  • webpack5高级配置

    注意:webpack5基本配置只是打包产出一个html文件 ,想要产出多个html就需要进行过入口的配置 webpack.common.js 注意:公共文件中的入口需要引入两个js文件  webpack.prod.js 注意:输出的时候利用[name]根据输入的文件名来确定导出的文件名称! webpack.common.js 注意:针对多个html文件

    2024年02月15日
    浏览(54)
  • webpack5(一)

    webpack是一个静态资源打包工具,它会以一个或者多个文件作为打包的入口,将整个项目的所有文件编译组合成一个或多个文件输出出去。输出的文件就是编译好的文件,可以在浏览器端运行。一般将 webpack 输出的文件称为 bandle 。 webpack 本身的功能也是有限的,一共有两种模

    2024年02月11日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包