html - vue如何定義一個變量,讓所有組件都能使用
問題描述
如圖,每個get和post請求都一個url,項目進行太多的數據交互 所以需要把每個url的相同部分定義成一個變量,這樣方便以后修改 但我不懂如何在vue里面定義一個公共變量,讓所有組件都能使用。希望大家幫幫忙,謝謝
問題解答
回答1: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的方式即可
回答2:這個跟vue ,貌似沒關系吧。如果是用ES6,就可以用 const 模塊來做了。
// api.jsexport const BASE_URL = ’//192.168.1.117:1009/’... ...
調用:
import { BASE_URL } from ’api’this.$http.get(`{BASE_URL}/cas/doc/docTypeList`)...
這類問題,可以借鑒redux 里面針對模塊定義的方案。vue 也有同款:vuex
回答3:API.js
var API=’xxxxx’;exports.API=API;import API from ’./API’API.API回答4:
寫個Vue插件啊,插件是全局的。
回答5:全局變量window或者vuex
