您好,欢迎访问一九零五行业门户网

vue中如何来定义全局变量和全局方法?(代码)

这篇文章给大家介绍的内容是关于vue中如何来定义全局变量和全局方法?(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
一、全局引入文件
1、先定义共用组件 common.vue
<script type="text/javascript">    // 定义一些公共的属性和方法    const httpurl = 'http://39.105.17.99:8080/'    function commonfun() {        console.log(公共方法)    }    // 暴露出这些属性和方法    export default {        httpurl,        commonfun    }</script>
2、在需要使用的地方导入
<script>// 导入共用组件import global from './common.vue'export default {  data () {    return {      username: '',      password: '',      // 赋值使用      globalhttpurl: global.httpurl    }  },
3、使用
<template>    {{globalhttpurl}}</template>
二、main.js中引入全局变量和方法
1、定义共用组件同上
2、main.js中引入并复制给vue
// 导入共用组件import global from './common.vue'vue.prototype.common = global
3、使用
export default {  data () {    return {      username: '',      password: '',      // 赋值使用, 可以使用this变量来访问      globalhttpurl: this.common.httpurl    }  },
总结 实例
common.vue文件,项目中的公共,或者全局文件
vue-resource需要先配置一下 main.js
// 配置使用formdatevue.http.options.emulatehttp = truevue.http.options.emulatejson = true
<script type="text/javascript">// 定义一些公共的属性和方法const httpurl = 'http://39.105.17.99:8080/'function promisefun (url, params) {  return new promise((resolve, reject) => {    this.$http.post(this.globalhttpurl + url, params).then(      (res) => {        resolve(res.json())      },      (err) => {        reject(err.json())      }    )  })}// 暴露出这些属性和方法export default {  httpurl,  promisefun}</script>
使用
export default {  data () {    return {      username: '',      password: '',      globalhttpurl: global.httpurl,      promisefun: global.promisefun    }  },  methods: {    logininfun () {      localstorage.setitem('userid', '00001')      let params = {        telphone: this.username,        password: this.password      }      this.promisefun('itartison/user/login', params).then(        (res) => {          console.log(res)          this.$message.info(res.message)          // 登录成功过以后,这里从初session          // 先将对象转换为json字符串          localstorage.setitem('userinfo', json.stringify(res.data))          if (res.code === '0000') {            this.$router.push({'name': 'home'})          }        },        (err) => {          console.log(err)          this.$message.info(err.message)        }      )    }  }
相关文章推荐:
vue组件如何挂载到全局?vue组件挂载到全局的方法介绍(代码)
vue项目中定义全局变量和全局函数详解
关于vue定义全局变量的几种方法详解
以上就是vue中如何来定义全局变量和全局方法?(代码)的详细内容。
其它类似信息

推荐信息