html - vue如何定义一个变量,让所有组件都能使用
伊谢尔伦
伊谢尔伦 2017-04-17 14:59:13
0
5
906

如图,每个get和post请求都一个url,项目进行太多的数据交互 所以需要把每个url的相同部分定义成一个变量,
这样方便以后修改 但我不懂如何在vue里面定义一个公共变量,让所有组件都能使用。希望大家帮帮忙,谢谢

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

Antworte allen(5)
巴扎黑

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

左手右手慢动作

API.js

var API='xxxxx';
exports.API=API;

import API from './API'

API.API
小葫芦

写个Vue插件啊,插件是全局的。

Peter_Zhu

全局变量window或者vuex

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage