1. 程式人生 > >vue 生產環境和測試環境的配置

vue 生產環境和測試環境的配置

我們引用的是axios 

給src目錄增加 api 資料夾 裡面寫上index.js

// 配置API介面地址
var root = process.env.API_ROOT
// 引用axios
var axios = require('axios')
// 自定義判斷元素型別JS
function toType (obj) {
  return ({}).toString.call(obj).match(/\s([a-zA-Z]+)/)[1].toLowerCase()
}
// 引數過濾函式
function filterNull (o) {
  for (var key in o) {
    if (o[key] === null) {
      delete o[key]
    }
    if (toType(o[key]) === 'string') {
      o[key] = o[key].trim()
    } else if (toType(o[key]) === 'object') {
      o[key] = filterNull(o[key])
    } else if (toType(o[key]) === 'array') {
      o[key] = filterNull(o[key])
    }
  }
  return o
}
/*
  介面處理函式
  這個函式每個專案都是不一樣的,我現在調整的是適用於
  https://cnodejs.org/api/v1 的介面,如果是其他介面
  需要根據介面的引數進行調整。參考說明文件地址:
  https://cnodejs.org/topic/5378720ed6e2d16149fa16bd
  主要是,不同的介面的成功標識和失敗提示是不一致的。
  另外,不同的專案的處理方法也是不一致的,這裡出錯就是簡單的alert
*/

function apiAxios (method, url, params, success, failure) {
  if (params) {
    params = filterNull(params)
  }
  axios({
    method: method,
    url: url,
    data: method === 'POST' || method === 'PUT' ? params : null,
    params: method === 'GET' || method === 'DELETE' ? params : null,
    baseURL: root,
    withCredentials: false
  })
  .then(function (res) {
    if (res.data.success === true) {
      if (success) {
        success(res.data)
      }
    } else {
      if (failure) {
        failure(res.data)
      } else {
        window.alert('error: ' + JSON.stringify(res.data))
      }
    }
  })
  .catch(function (err) {
    let res = err.response
    if (err) {
      window.alert('api error, HTTP CODE: ' + res.status)
      return
    }
  })
}

// 返回在vue模板中的呼叫介面
export default {
  get: function (url, params, success, failure) {
    return apiAxios('GET', url, params, success, failure)
  },
  post: function (url, params, success, failure) {
    return apiAxios('POST', url, params, success, failure)
  },
  put: function (url, params, success, failure) {
    return apiAxios('PUT', url, params, success, failure)
  },
  delete: function (url, params, success, failure) {
    return apiAxios('DELETE', url, params, success, failure)
  }
}

然後給

config目錄下的prod.env.js修改成

module.exports = {
  NODE_ENV: '"production"',
  API_ROOT:'"正式服的API"'
}

dev.env.js 修改成

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

module.exports = merge(prodEnv, {
    NODE_ENV: '"development"',
    API_ROOT:'"測試服的api"',
})

然後我們到main.js 增加以下程式碼

// 引用API檔案
import api from './api/index.js'   //axios封裝
// 將API方法繫結到全域性
Vue.prototype.$api = api

這樣我們本地npm run dev跑的就是測試服地址了 ,如果要切換正服地址,可以修改 root 的地址為正服地址。

npm run build 跑的是正式服地址。

那麼還有一個問題就是怎麼build  測試服地址呢  

我的思路是這樣的 把build.js 複製出來改成測試服的的api 地址即可

那麼我們來實現一下 

給package.json  增加  

 "test": "node build/test.js",

然後把build.js  複製出來 改成test.js

修改

const webpackConfig = require('./webpack.test.conf')

然後把webpack.prod.conf.js 複製成webpack.test.conf.js

修改

const env = require('../config/test.env')

最後一步 把prod.env.js 複製成 test.env.js

把 test.env.js 裡面的 API_ROOT

修改成你的測試服地址 那麼我們npm run test  就能跑測試服的api了。

相關推薦

vue 生產環境測試環境配置

我們引用的是axios  給src目錄增加 api 資料夾 裡面寫上index.js // 配置API介面地址 var root = process.env.API_ROOT // 引用axios var axios = require('axios') // 自定義

Spring Boot 便捷修改生產環境測試環境下的配置檔案

期初在網路上百度,搜出五花八門的內容,最後覺得都很複雜和麻煩,索性就大膽猜測了一下,結果行的通,方式如下: 準備三個Spring Boot工程的配置檔案,名字命名分別如下圖:  在主配置檔案中只需要這樣寫即可: spring.profiles.active=test

IDEA配置gradle打包生產環境測試環境分離

本文前半段摘抄自:https://ixiaozhi.com/java-gradle-archive-different-profile/ 後面是自己所寫 配置 Gradle 配置檔案 build.gradle 中配置相關的 resources 配置檔案的目錄。不同的

ASP.NET CORE 2.0 釋出到IIS,IIS如何設定環境變數來區分生產環境測試環境

0.前言 因為給前端的測試環境是windows,所以要設定windows上的環境變數,如果上Linux就沒有這篇文章了,所以大家不要在意為什麼core不放在linux上。 1.網上的解決方案  a 方式:通過 setx 命令設定環境變數引數,文章地址:https://www.cnblogs.com/xishu

SpringBoot的Profiles根據開發環境測試環境載入不同的配置檔案

參考:https://www.cnblogs.com/bjlhx/p/8325374.html 1、需要有一個預設的配置檔案,然後一個正式的配置檔案,一個測試的配置檔案。啟用配置項,預設的配置檔案application.properties也會載入進去的。程式設計的方式指定生效的profile。 預設的配

maven profile切換正式環境測試環境 maven profile切換正式環境測試環境

maven profile切換正式環境和測試環境   討論QQ群:313032825 有時候,我們在開發和部署的時候,有很多配置檔案資料是不一樣的,比如連線mysql,連線redis,一些properties檔案等等 每次部署或者開發都要改配置檔案太麻

maven profile切換正式環境測試環境

有時候,我們在開發和部署的時候,有很多配置檔案資料是不一樣的,比如連線mysql,連線redis,一些properties檔案等等 每次部署或者開發都要改配置檔案太麻煩了,這個時候,就需要用到maven的profile配置了 1,在專案下pom.xml的proje

編程基礎 之 開發環境測試環境的局別

發布 分享 自測 考試 基礎 ans 線上 .html tar 開發環境,更多的是各自開發的本地,代碼可以隨意修改,方便開發自身測試用,但該環境由於可以直接修改,很多bug不容易被發現,只能是開發自測或寫代碼時候 自用。 測試環境,是相對穩定的環境。代碼是可以提交 再pul

vue專案配置生產環境釋出環境的介面地址

平常我們團隊開發時,都在公司的區域網內,呼叫介面也是區域網內部的,但是專案上線時,請求介面是線上伺服器端的,那麼就有介面之間的來回切換問題.在使用vue-cli搭建專案以後,做相關配置就可以實現,不用手動更改介面路徑,也可以請求不同環境下的介面.1.設定不同的介面地址先找到以

vue axios 給生產環境釋出環境配置不同的介面地址

本專案是vue-cli搭建的專案框架,引入axios用於資料請求。配置不同的介面地址,(首先確保已經集成了axios,如對整合axios有疑問的道友,可參看我之間的一篇部落格vue-cli 引入axios)操作如下一、設定不同的介面地址找到如下檔案 /config/dev.e

vue中使用axios給生產環境開發環境配置不同的baseUrl

evel 發送post請求 ont itl -type ack www. headers eject 第一步:設置不同的接口地址 找到文件:/config/dev.env.js     代碼修改為: 1 2 3 4 5

vue+element 切換正式測試環境

1.package.json  { "name": "element-starter", "description": "A Vue.js project", "author": "[email protected]", "private": t

Angular6 配置專案開發環境測試環境生產環境

搜過很多文章說的都是關於Angular4的配置,後面自己又找了許多資料,最後總結了Angular6 如何配置開發環境,測試環境,生產環境: 1、在environments資料夾裡新建三個檔案: //生產環境 environment.prod.ts: export const enviro

Jenkins~配合Docker及dotnetCore進行生產測試環境的靈活部署

回到目錄 首先要清楚本文是講dotnetcore專案在生產和測試環境部署的,這在過去的frameworks專案裡,我們可以通過設定web.config的環境變數,然後再發布時指定具體的變數,去實現生產環境和測試環境的釋出,釋出之後,每個環境有自己的配置檔案,frameworks會更新環境把web.confi

vue.js入門學習(搭建環境測試demo)

     什麼是vue.js?這是官網的解釋。     Vue.js(讀音 /vjuː/,類似於 view) 是一套構建使用者介面的漸進式框架。與其他重量級框架不同的是,Vue 採用自底向上增量開發的設計。Vue 的核心庫只關注檢視層,它不僅易於上手,還便於與第三方庫或

【webpack學習筆記】a06-生產環境開發環境配置

生產環境和開發環境的配置目標不一樣,生產環境主要是讓檔案壓縮得更小,更優化資源,改善載入時間。 而開發環境,主要是要開發更方便,更節省時間,比如除錯比如自動重新整理。 所以可以分開配置不同的開發環境,然後需要哪種用哪種。 配置流程實踐記錄: 新建專案資料夾 demo 初始化 npm ini

開發環境生產環境測試環境的基本理解區別

開發環境:開發環境是程式猿們專門用於開發的伺服器,配置可以比較隨意, 為了開發除錯方便,一般開啟全部錯誤報告。 測試環境:一般是克隆一份生產環境的配置,一個程式在測試環境工作不正常,那麼肯定不能把它釋出到生產機上。 生產環境:是指正式提供對外服務的,一般會關掉錯誤報告,開啟

vue下腳手架區分測試環境正式環境

在網上找來找去,找到很多資料。自己實踐後再統計一下。 運用環境:公司增加測試環境,用腳手架搭出來的環境只有開發和線上,也就是隻有dev和prod。現在增加一個test環境。很多其他的資料是用了一個外掛。我這個方法不用外掛。好了,話不多說。開始搞。 1.在build資料夾中

通過 spring 容器內建的 profile 功能實現開發環境測試環境生產環境配置自動切換

軟體開發的一般流程為工程師開發 -> 測試 -> 上線,因此就涉及到三個不同的環境,開發環境、測試環境以及生產環境,通常這三個環境會有很多配置引數不同,例如資料來源、檔案路徑、url等,如果每次上線一個新版本時都手動修改配置會十分繁瑣,容易出錯。spring 為我

軟體開發環境生產環境測試環境的基本理解區別

對於剛剛來到一個新的團隊或是新環境的“新人”來說,當你無所事事且故作投入之時,聽著幾個“老人”在自己可視範圍之外或嚴肅或輕鬆的討論著業務,其措辭拿捏精準,語氣抑揚頓挫,期間,涉及到一些的概念可能難免讓你不明覺厲……然默默道:”高階,大氣,上檔次!“ ”不識廬山真面目,只緣身在此山中“,對於一些術語,它既有官方