如图,每个get和post请求都一个url,项目进行太多的数据交互 所以需要把每个url的相同部分定义成一个变量,这样方便以后修改 但我不懂如何在vue里面定义一个公共变量,让所有组件都能使用。希望大家帮帮忙,谢谢
小伙看你根骨奇佳,潜力无限,来学PHP伐。
main.js
import domain from './domain.js'; global.domain = domain;
domain.js
const domain = '//192.168.1.117:1009/'; export default { testUrl: domain + '/cas/doc/docTypeList' }
如上所示的結構可以解決在大中型vue應用中的請求url的管理,樓主可以在main.js中引入該domain.js,並將其暴露為全局變量,在每個組件中就能透過domain.testUrl的方式取得到設定的對應的url位址。 好處如下:
集中式的url管理,方便後製與修改
方便編碼,在請求通過domain.testUrl的方式即可
這個跟vue ,看起來沒關係吧。如果是用ES6,就可以用 const 模組來做了。
// api.js export const BASE_URL = '//192.168.1.117:1009/' ... ...
呼叫:
import { BASE_URL } from 'api' this.$http.get(`{BASE_URL}/cas/doc/docTypeList`) ...
這類問題,可以參考redux 裡面針對模組定義的方案。 vue 也有同款:vuex
redux
API.js
寫個Vue插件啊,插件是全域的。
全域變數window或vuex
main.js
domain.js
如上所示的結構可以解決在大中型vue應用中的請求url的管理,樓主可以在main.js中引入該domain.js,並將其暴露為全局變量,在每個組件中就能透過domain.testUrl的方式取得到設定的對應的url位址。
好處如下:
集中式的url管理,方便後製與修改
方便編碼,在請求通過domain.testUrl的方式即可
這個跟vue ,看起來沒關係吧。如果是用ES6,就可以用 const 模組來做了。
呼叫:
這類問題,可以參考
redux
裡面針對模組定義的方案。vue 也有同款:vuex
API.js
雷雷寫個Vue插件啊,插件是全域的。
全域變數window或vuex