vue-cli配置文件——config篇

yizhihongxing

下面是关于“vue-cli配置文件——config篇”的完整攻略:

1. 概述

在使用Vue-cli构建Vue项目时,除了基础配置文件(如 package.json、index.html、main.js等),还有一些高级配置文件。其中,config目录下的配置文件是一些开发、打包、运行时的配置信息集合。

2. 细节

2.1 index.js

index.js 是 Vue-cli 配置文件中最核心的文件之一,它主要负责 dev 和 build 时的主要配置。

下面是一个基础的index.js示例:

module.exports = {
  dev: {
    // ...
  },
  build: {
    // ...
  }
}

当你需要修改webpack配置时,可以通过添加configureWebpack或chainWebpack属性来实现。通常来说,新增配置可以通过这两个属性发挥作用:

module.exports = {
  chainWebpack: config => {
    // 更改执行配置
  },
  configureWebpack: {
    // 覆盖webpack默认配置
  },
}

此外,还可以添加plugins、loaders等,不使用字符串值而直接调用已有的函数:

module.exports = {
  configureWebpack: config => {
    // 还可以这样直接调用函数
    config.plugins.push(new MyAwesomeWebpackPlugin())
  }
}

2.2 dev.env.js

dev.env.js 主要用来配置开发环境中的变量。

下面是一个基础的dev.env.js示例:

'use strict'
const merge = require('webpack-merge')
const prodEnv = require('./prod.env')

module.exports = merge(prodEnv, {
  NODE_ENV: '"development"'
})

其中NODE_ENV是一个特殊的被Webpack定义的变量。

2.3 prod.env.js

prod.env.js 主要用来配置生产环境中的变量。

下面是一个基础的prod.env.js示例:

'use strict'
module.exports = {
  NODE_ENV: '"production"'
}

同样地,NODE_ENV也是一样被Webpack定义的变量。

3. 示例

3.1 修改代理

在开发模式下,我们需要解决跨域问题。由于我们一般把前端服务和后端服务分别运行在不同的端口上,因此我们需要通过代理方式来把请求转发到后端。

Vue-cli已经自带webpack-dev-server,可以很容易地添加proxyTable,把请求转发到后端服务。

首先在config目录下的index.js中的dev对象中加入proxyTable属性,用于配置代理:

dev: {
  proxyTable: {
    '/api': {
      target: 'http://localhost:3000',
      changeOrigin: true,
      pathRewrite: {
        '^/api': ''
      }
    }
  }
}

这里我们配置了一个/api路由前缀,它将被代理到http://localhost:3000/api下(后端API地址)。

最后在 src/xxx.js 文件中发起请求,直接写url为 api/xxx 即可。

3.2 修改端口

有时候我们需要将Vue应用的开发或者打包运行在特定的端口上。可以通过dev和build对象中的port属性来完成。

比如,我们需要将开发模式的端口号设为8080:

dev: {
  port: 8080
}

同理,如果需要在打包时指定端口号,则:

build: {
  port: 8888
}

这样,当我们执行npm run dev时,Vue应用将会在端口号为8080的情况下启动。

同样地,当执行npm run build时,我们的Vue应用将会运行在端口号为8888的情况下打包。

简而言之,config文件夹下的各个文件对于Vue项目都具有指导意义,更多用法可以根据Vue官方文档自行查看和修改。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vue-cli配置文件——config篇 - Python技术站

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

相关文章

  • vue项目中引入noVNC远程桌面的方法

    以下是详细讲解如何在 Vue 项目中引入 noVNC 远程桌面的方法攻略: 步骤一:安装 noVNC 首先需要安装 noVNC,可以通过命令行使用 npm 安装,具体命令如下: npm install novnc 步骤二:引入 noVNC 打开需要使用 noVNC 的组件文件,例如 Example.vue,在 <script> 标签中引入 noV…

    Vue 2023年5月28日
    00
  • Vue项目打包部署全过程(history模式)

    下面是Vue项目打包部署全过程(history模式)的完整攻略。 1. 打包项目 使用Vue CLI的build命令来打包项目,在项目根目录下的终端输入以下命令: npm run build 这将把项目打包到dist目录中。打包完后,dist目录下会生成一个index.html文件和一些资源文件。 2. 配置服务器 使用Express框架来搭建服务器,先安装…

    Vue 2023年5月28日
    00
  • 解决vue打包报错Unexpected token: punc的问题

    针对”Unexpected token: punc”的问题,我们可以采取以下几个步骤来解决: 步骤一:检查代码语法 在报错中”Unexpected token” 意味着代码中有一些语法错误,如缺少分号、括号、引号、大括号等等。因此,我们需要先检查代码语法是否正确。 可以采用下面这个命令来检测代码语法: npm run lint 当然,如果项目中没有安装esl…

    Vue 2023年5月28日
    00
  • 详解利用eventemitter2实现Vue组件通信

    《详解利用eventemitter2实现Vue组件通信》 概述 Vue.js 是一款建立在MVVM模式之上的框架,而在 Vue.js 应用开发中,组件通信是不可避免的。尽管Vue.js提供了许多方式来实现组件通信,使用EventEmitter2来实现组件通信能够更好的解耦组件,提高组件的复用性。 EventEmitter2 是 EventEmitter 的一…

    Vue 2023年5月29日
    00
  • vue.js 双层嵌套for遍历的方法详解, 类似php foreach()

    下面让我详细讲解“vue.js 双层嵌套for遍历的方法详解, 类似php foreach()”的完整攻略。 前言 在使用 Vue.js 时,经常需要做列表展示,而列表数据往往是嵌套的,比如订单列表,订单中包含多个商品,那么就需要双层嵌套 for 循环遍历。本文将详细介绍使用 Vue.js 双层嵌套 for 循环遍历的方法。 方法一:使用 v-for 指令嵌…

    Vue 2023年5月29日
    00
  • 用vscode开发vue应用的方法步骤

    下面我来详细讲解使用vscode开发vue应用的方法步骤。 前置条件 在开始使用vscode开发vue应用前,需要安装node.js和vue-cli工具。安装完成后,在终端执行以下命令可以查看版本信息,确认安装成功。 node -v vue -V 步骤一:创建项目 使用vue-cli创建项目的命令如下: vue create my-app 其中,my-app…

    Vue 2023年5月27日
    00
  • Vue AST的转换实现方法讲解

    一、Vue AST转换的概念及作用 Vue AST是Vue编译器中的一种概念,它可以帮助我们理解Vue模板编译的本质,同时还可以提供一些优化编译模板的方法。AST(抽象语法树)是将代码解析后,构建出来的一棵树形结构模型,表示程序的语法结构,利用AST可以进行程序的分析、优化及计算机制等处理。 在Vue的编译过程中,Vue会先将模板编译成AST节点,然后再转换…

    Vue 2023年5月28日
    00
  • Vue无法访问.env.development定义的变量值问题及解决

    下面我将为您详细讲解 Vue 中无法访问 .env.development 定义的变量值问题及解决的完整攻略。 问题背景 在开发 Vue 网站时,我们通常需要配置环境变量,用于在不同环境中读取不同的配置信息。而在 Vue 中,我们可以通过在项目根目录下创建名为 .env、.env.local、.env.development 等文件来定义环境变量。 然而,在…

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