webpack中output中path和publicPath区别详解

本文详细介绍了webpack配置中的path和publicPath的区别。path是所有输出文件的目标绝对路径,决定了打包后文件在硬盘的存储位置;而publicPath则是资源文件引用的目录,用于设置浏览器访问时的URL路径前缀,尤其适用于不同环境下的资源路径配置。通过publicPath,我们可以方便地在开发和生产环境中切换资源路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

        webpack是目前比较主流的前端打包工具,其中output属性中有两个类似的配置项,path和publicPath,这一章我们来看看他们之间的区别

正文

path和publicPath的定义

path:所有输出文件的目标路径;打包后文件在硬盘中的存储位置。

publicPath:输出解析文件的目录,指定资源文件引用的目录 ,打包后浏览器访问服务时的 url 路径中通用的一部分。

path和publicPath的区别

        path是webpack所有文件的输出的路径,必须是绝对路径,比如:output输出的js,url-loader解析的图片,HtmlWebpackPlugin生成的html文件,都会存放在以path为基础的目录下。
        publicPath 并不会对生成文件的路径造成影响,主要是对你的页面里面引入的资源的路径做对应的补全,常见的就是css文件里面引入的图片
        总而言之,path是文件打包dist的位置,而publicPath是资源文件的公共头部url

利用publicPath区分不同环境资源路径

        可以利用publicPath来区分不同生产环境下的资源路径

output: {
    path: config.build.assetsRoot,
    filename: '[name].js',
    publicPath: process.env.NODE_ENV === 'production'
      ? config.build.assetsPublicPath
      : config.dev.assetsPublicPath
  }

       小伙伴们今天的学习就到这里了,如果觉得本文对你有帮助的话,欢迎转发,评论,收藏,点赞!!!
       每天学习进步一点点,就是领先的开始。如果想继续提高,欢迎关注我,或者关注公众号”祯民讲前端“。大量前端技术文章,面试资料,技巧等助你更进一步!
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值