Vue打包路径配置过程

yizhihongxing

下面是 Vue 打包路径配置的完整攻略:

1. 理解打包路径

在 Vue 应用中,所有的资源文件都可以被打包(Bundle)到一起,如 JS、CSS、图片等等。在浏览器端使用时,需要访问打包后的文件,这些文件在浏览器中被认为是相对于 HTML 引用的路径来解析的。因此,我们需要对打包路径进行配置。打包路径分为两种情况:

  • 在开发环境下使用的路径
  • 在生产环境下使用的路径

这两者的打包路径需要分别进行配置。

2. 配置打包路径

2.1 配置开发环境下的打包路径

在开发环境中需要在 config/index.js 中配置 assetsPublicPath,找到以下代码:

module.exports = {
  dev: {
    assetsPublicPath: '/',
    // ...
  },
  // ...
}

assetsPublicPath 代表资源访问的 publicPath,这里我们把它设置为 /,即使用相对路径。如果需要使用绝对路径,可以设置为绝对路径,例如:

module.exports = {
  dev: {
    assetsPublicPath: 'http://yourdomain.com/',
    // ...
  },
  // ...
}

在设置了打包路径后,每次启动 npm run dev 启动应用时,资源路径将会被正确的处理。

2.2 配置生产环境下的打包路径

在生产环境中,打包路径需要在 webpack 配置文件中进行设置。可以通过 output.publicPath,或者在 HtmlWebpackPlugin 中的 publicPath 设置。

使用 output.publicPath 进行配置

可以在 config/prod.env.js 文件中添加环境变量:

module.exports = merge(prodEnv, {
  NODE_ENV: '"production"',
  PUBLIC_PATH: '"http://yourdomain.com/"' // 在这里添加
})

然后在 webpack.prod.conf.js 中使用这个环境变量:

const publicPath = process.env.PUBLIC_PATH // 从环境变量中获取打包路径

module.exports = merge(baseWebpackConfig, {
  output: {
    // ...
    publicPath: publicPath // 配置 publicPath
  },
  // ...
})

使用 HtmlWebpackPlugin 进行配置

webpack.prod.conf.js 中,找到 plugins 数组:

plugins: [
  // ...
  new HtmlWebpackPlugin({
    // ...
  }),
  // ...
],

HtmlWebpackPlugin 的配置项中添加 publicPath,例如:

plugins: [
  // ...
  new HtmlWebpackPlugin({
    filename: config.build.index,
    template: 'index.html',
    inject: true,
    minify: {
      // ...
    },
    // 在这里添加
    publicPath: 'http://yourdomain.com/'
  }),
  // ...
],

这样,发布生产环境的时候所有资源文件都使用了指定的公共路径。

3. 示例

3.1 示例1:使用相对路径

config/index.js 中,将 assetsPublicPath 修改为 './',这样配置完成后,在访问资源时就是相对路径。如:

<link rel="stylesheet" href="./static/css/app.css">
<script src="./static/js/manifest.js"></script>

这种方式可以基本适用于所有项目,而且常用于开发阶段。

3.2 示例2:使用 CDN

config/prod.env.js 中,添加 CDN 地址环境变量:

module.exports = merge(prodEnv, {
  NODE_ENV: '"production"',
  PUBLIC_PATH: '"http://cdn.yourdomain.com/"'
})

webpack.prod.conf.js 中,使用环境变量:

const publicPath = process.env.PUBLIC_PATH

module.exports = merge(baseWebpackConfig, {
  output: {
    publicPath: publicPath
  },
  // ...
})

这种方式使用 CDN 可以有效地加速资源的打包和加载速度,适合于需要快速加载大量资源的项目。需要注意的是,使用 CDN 时应该考虑到 CDN 更新带来的版本更新问题,在静态资源有更改时,需要主动更新 CDN。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Vue打包路径配置过程 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • Python Flask 转换器的使用详解

    介绍 Flask 转换器之前,需要先理解 Flask 中 URL 的基本形式。Flask 的 URL 基本形式为:/path/<variable>/another_path,其中 <variable> 为可变的路由参数,可以根据具体的需求进行设置。 如果 URL 中的参数不是想要的类型,那么我们需要转换器。常见的转换器包括 int、f…

    Flask 2023年5月16日
    00
  • Python+Flask实现自定义分页的示例代码

    笔者将为你详细讲解“Python+Flask实现自定义分页的示例代码”的完整攻略。 简介 在Flask开发Web应用过程中,实现分页功能可能会涉及到数据库查询、分页计算等多种操作,本文将介绍使用Python+Flask框架实现自定义分页的示例代码并解释实现细节。 示例1:自定义分页函数 实现思路 自定义分页函数主要的目的是减少重复代码,实现通用分页逻辑,具体…

    Flask 2023年5月15日
    00
  • python-Web-flask-视图内容和模板知识点西宁街

    下面就针对“python-Web-flask-视图内容和模板知识点西宁街”的完整攻略进行详细讲解,其中包含两个示例说明。 标题 1. 概述 Flask 是一个轻量级 Web 开发框架,其在视图与模板的处理方面有独特的设计思想和使用方法。 视图(View)是一种用于处理请求并返回响应的函数或方法,而模板(Template)则是一种静态文件,用于构建动态生成的 …

    Flask 2023年5月15日
    00
  • Python部署web开发程序的几种方法

    Python已经成为了开发Web应用程序的流行选择,因为它有许多轻松使用的框架和库。 在本文中,我们将探讨Python部署Web开发程序的几种方法。 1. 基于WSGI WSGI 是Web Server Gateway Interface的缩写, 是一种Python Web应用程序的标准接口。 WSGI规范允许Web服务器和web应用程序之间交流,并可以基于…

    Flask 2023年5月15日
    00
  • 用 Flask 实现发送电子邮件

    Flask 是一款轻量级的 Web 框架,非常适合快速开发小型 Web 应用。 在这篇文章中,我们将详细介绍如何在 Flask 应用中发送邮件。 安装 Flask-Mail 扩展 首先,我们需要安装 Flask-Mail 扩展来发送邮件。可以使用下面的命令来安装 Flask-Mail: pip install Flask-Mail 接下来,我们需要设置 Fl…

    Flask 2023年3月13日
    00
  • Python编程在flask中模拟进行Restful的CRUD操作

    下面我详细讲解一下“Python编程在flask中模拟进行Restful的CRUD操作”的攻略及两个示例。 入门 首先,需要安装好 Python 和 Flask。你可以在官方文档中找到相应的安装指南: Python 安装指南 Flask 安装指南 安装好之后,我们就可以开始了。 搭建项目 首先,创建一个包含 Flask 和相应依赖项的虚拟环境。可以使用 ve…

    Flask 2023年5月15日
    00
  • Python webargs 模块的简单使用

    Python webargs 模块是一个用于验证和从请求中提取参数的工具包。它有助于在开发 Web 应用时处理复杂的查询参数,并提供了一个简单的解决方案来处理数据验证和转换。 安装 webargs 可以通过 pip 安装: pip install webargs 基本用法 引入 webargs: from webargs import fields from…

    Flask 2023年5月15日
    00
  • Python脚本实现格式化css文件

    当我们编写较大的CSS文件时,往往会出现文件结构不清晰、代码难以维护等问题,而格式化CSS文件可以使代码更易读、易维护。本文将介绍如何使用Python脚本来格式化CSS文件。 步骤1:安装cssutils库 CSS文件格式化需要使用到cssutils库,可以通过pip install cssutils来进行安装。如果你的Python环境没有安装pip,那么需…

    Flask 2023年5月16日
    00
合作推广
合作推广
分享本页
返回顶部