vue 项目打包通过命令修改 vue-router 模式 修改 API 接口前缀

yizhihongxing

在讲解“vue 项目打包通过命令修改 vue-router 模式修改 API 接口前缀”之前,我们需要了解一下几个基本概念。

  1. vue-router:是 Vue.js 官方提供的路由管理插件。
  2. API 接口前缀:是指 API 接口的 URL 前面的部分,通常包含域名、端口号等信息。

下面是详细的攻略:

  1. 修改 vue-router 模式:

Vue Router 可以有三种不同的模式:hash(默认值)、history 和 abstract。在打包时修改 vue-router 模式,首先需要通过命令行工具安装 cross-env且通过 cross-env 设置环境变量。cross-env 用于跨平台设置环境变量,可用于 Windows、Linux 和 macOS。

具体操作流程如下:

安装 cross-env:

npm install cross-env --save-dev

修改环境变量:

"scripts": {
    "dev": "cross-env NODE_ENV=development vue-cli-service serve",
    "build": "cross-env NODE_ENV=production vue-cli-service build"
  }

在环境变量中添加一个新的变量:

"scripts": {
    "dev": "cross-env NODE_ENV=development VUE_APP_ROUTER_MODE=hash vue-cli-service serve",
    "build": "cross-env NODE_ENV=production VUE_APP_ROUTER_MODE=history vue-cli-service build"
  }
  1. 修改 API 接口前缀

在开发过程中,API 接口 URL 可能会发生变化,所以在打包时需要通过命令修改 API 接口前缀。这里介绍两种常用的方式:

  • 方式一:通过 .env 文件配置

在根目录下创建一个 .env 文件,然后设置 API 接口的前缀,例如:

VUE_APP_BASE_API=http://localhost:8080/api

在 vue.config.js 文件中,使用 process.env.VUE_APP_BASE_API 来引用 API 接口前缀,例如:

module.exports = {
  devServer: {
    proxy: {
      '/api': {
        target: process.env.VUE_APP_BASE_API,
        changeOrigin: true,
        pathRewrite: {
          '^/api': ''
        }
      }
    }
  }
}
  • 方式二:通过 cross-env 命令行参数配置

在命令行中指定 API 接口的前缀,例如:

cross-env VUE_APP_BASE_API=http://localhost:8080/api vue-cli-service build

在 vue.config.js 文件中,使用 process.env.VUE_APP_BASE_API 来引用 API 接口前缀,例如:

module.exports = {
  devServer: {
    proxy: {
      '/api': {
        target: process.env.VUE_APP_BASE_API,
        changeOrigin: true,
        pathRewrite: {
          '^/api': ''
        }
      }
    }
  }
}

以上就是“vue 项目打包通过命令修改 vue-router 模式修改 API 接口前缀”攻略的详细说明,希望对你有帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vue 项目打包通过命令修改 vue-router 模式 修改 API 接口前缀 - Python技术站

(0)
上一篇 2023年6月11日
下一篇 2023年6月11日

相关文章

  • javascript导出csv文件(excel)的方法示例

    下面是关于“javascript导出csv文件(excel)的方法示例”的完整攻略: 一、CSV文件格式介绍 CSV(Comma-Separated Values)就是指逗号分隔符,通常是一种保存矩阵数据的文件格式。每行记录表示一行,以逗号作为分隔符,不同列数据存在不同位置,可以通过表格对齐的方式方便地分辨出来。 例如:下面是一个CSV文件的模板: 姓名,学…

    JavaScript 2023年5月27日
    00
  • 详细谈谈JS中的内存与变量存储

    JS中的内存与变量存储 内存的概念 在JS中,变量都是存储在内存中的。内存是计算机硬件中的一种可读写数据存储器,它用来存储计算机正在运行的程序、运行时所需要的数据以及运行之后产生的结果。在JS中,内存分为堆内存和栈内存两种。 栈内存 栈内存是一种连续的内存空间,可以自动分配和释放,其中存储函数的局部变量、函数参数、函数的返回值、对象的引用等。当函数运行结束或…

    JavaScript 2023年6月11日
    00
  • jQuery Attributes(属性)的使用(二、类篇)

    接下来我会详细讲解一下jQuery中Attributes(属性)的使用,特别是二、类篇。 1.使用addClass()方法添加类 jQuery提供了addClass()方法,可以在元素上添加指定的类名。其语法如下: $(selector).addClass(classname); 其中,selector表示需要添加类名的元素选择器,而classname则表示…

    JavaScript 2023年6月10日
    00
  • JavaScript实现列表分页功能特效

    下面是“JavaScript实现列表分页功能特效”的完整攻略: 一、理解列表分页功能的实现原理 在网页中使用 JavaScript 和 DOM 操作来获取并显示数据。例如使用 XMLHttpRequest 对象来获取数据,然后使用 DOM 操作将数据添加到页面中。 将获取到的数据分页处理。例如,计算需要显示的页面数,并为用户提供翻页按钮来切换不同的页面。 根…

    JavaScript 2023年6月11日
    00
  • JS面试题解[‘1’, ‘7’, ’11’].map(parseInt) 输出

    题目描述:给定数组 [‘1’, ‘7’, ’11’],执行 [‘1’, ‘7’, ’11’].map(parseInt),输出什么? 首先,让我们看看 map、parseInt 函数的用法和参数形式。 map 函数 map() 方法创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果。 arr.map(callback(currentV…

    JavaScript 2023年5月28日
    00
  • 微信小程序按钮点击动画效果的实现

    下面是关于“微信小程序按钮点击动画效果的实现”的完整攻略: 简介 在微信小程序中,用户交互体验至关重要。为了增强用户的交互体验,为小程序中按钮添加点击动画效果是非常必要的。本节将详细讲解如何实现一个简单的点击动画效果。 实现步骤 1.添加点击事件 首先,我们需要为按钮添加一个点击事件,这个很简单,只需要在 WXML 文件中绑定点击事件即可: <view…

    JavaScript 2023年6月11日
    00
  • Javascript原生ajax请求代码实例

    下面我会详细讲解“JavaScript原生ajax请求代码实例”的完整攻略。 什么是ajax请求? Ajax(Asynchronous JavaScript and XML)即异步JavaScript和XML,是指利用JavaScript的异步通信机制达到异步更新网页的技术。通过Ajax技术,实现了网页异步请求数据,而不是同步刷新页面。 发送Ajax请求的步…

    JavaScript 2023年6月11日
    00
  • JavaScript For Beginners(转载)

    JavaScript For Beginners是一篇适合初学者的JavaScript教程,以下是该攻略的完整讲解。 1. 前言 该教程主要分为三个部分,包括基础、进阶和高级。对于初学者来说,可以先学习基础部分,再根据自己的需要选择进阶和高级部分。 2. 基础 该部分主要包括JavaScript的基础语法和基本概念。 2.1. JavaScript简介 该节…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部