开发中会经常用到一些常用的变量和方法   例如ajax这种

一、给vue定义全局变量


1.定义专用模块来配置全局变量

定义一个专用模块来配置全局变量,然后通过export暴露出去,在需要的组件引入global.vue

// 定义一些公共的属性和方法
const httpUrl = 'http://test.com'
// 暴露出这些属性
export default {httpUrl,
}

引入及使用

<script>// 导入共用组件import global from './global.vue'export default {data () {return {//使用globalUrl: global.httpUrl}}}
</script>

2.通过全局变量挂载到Vue.prototype

同上,定义一个专用模块来配置全局变量,然后通过export暴露出去,在需要的组件引入global.vue

// 定义一些公共的属性和方法
const httpUrl = 'http://test.com'
// 暴露出这些属性
export default {httpUrl,
}

在main.js中引入并复制给vue

// 导入共用组件
import global from './global.vue'
Vue.prototype.global = global

组件调用

export default {data () {return {// 赋值使用, 可以使用this变量来访问globalHttpUrl: this.global.httpUrl}
}

3.使用vuex

安装:

npm install vuex --save

新建store.js文件

import Vue from 'vue'
import Vuex from 'vuex';
Vue.use(Vuex);
export default new Vuex.Store({ state:{ httpUrl:'http://test.com' }
})

main.js中引入

import store from './store'
new Vue({el: '#app', router, store, components: { App }, template: '<App/>'
});

组件内调用

console.log(this.$store.state.httpUrl)

二、给vue定义全局方法

1.将方法挂载到 Vue.prototype 上面

简单的函数可以直接写在main.js文件里定义。

// 将方法挂载到vue原型上
Vue.prototype.changeData = function (){alert('执行成功');
}

使用方法

//直接通过this运行函数,这里this是vue实例对象
this.changeData();

2. 利用全局混入 mixin

新建一个mixin.js文件

export default {data() {},methods: {randomString(encode = 36, number = -8) {return Math.random() // 生成随机数字,.toString(encode) // 转化成36进制.slice(number) }}
}

// 在项目入口 main.js 里配置

import Vue from 'vue'
import mixin from '@/mixin'Vue.mixin(mixin)

// 在组件中使用

export default {mounted() {this.randomString()}
}

3. 使用插件方式

plugin.js文件,文件位置可以放在跟main.js同一级,方便引用

exports.install = function (Vue, options) {Vue.prototype.test = function (){console.log('test');};
};

main.js引入并使用。

import plugin from './plugin'
Vue.use(plugin);

所有的组件里就可以调用该函数。

this.test();

vue如何定义:全局变量、全局方法相关推荐

  1. js定义全局变量 vue页面_详解Vue.js 定义全局变量的几种实现方式

    详解Vue.js 定义全局变量的几种实现方式 发布于 2020-8-11| 复制链接 本篇文章主要介绍了VUE 全局变量的几种实现方式,小妖觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小妖 ...

  2. js定义全局变量 vue页面_vue + typescript,定义全局变量或者方法

    众所周知,在 vue中,如果想定义一个全局变量的方法很简单,直接在 vue的原型上挂载属性或者方法即可. 但是,加上了typescript之后, Vue.prototype.$xxx = xxx  这 ...

  3. 在vue项目中 如何定义全局变量 全局函数

    原文 定义全局变量 原理: 设置一个专用的的全局变量模块文件,模块里面定义一些变量初始状态,用export default 暴露出去,在main.js里面使用Vue.prototype挂载到vue实例 ...

  4. Vue中定义全局变量与常量的各种方式详解_vue.js_脚本之家

    前言 本文主要跟大家介绍了关于Vue定义全局变量与常量的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍: 我想要定义一个变量, 在项目的任何地方都可以访问到, 不需要每一次使用 ...

  5. vue.js—定义全局变量、函数

    废话不多说,直接上代码,以便以后学习查看... 一.全局变量 原理: 单独新建一个全局变量模块文件,模块中定义一些变量初始状态,用export default 暴露出去. 在main.js中引入,并通 ...

  6. Vue3.0如何在setup中获取定义的全局方法

    有些情况下我们需要定义全局方法 然而在vue3.0中我们定义全局方法需要在globalProperties上面定义大部分情况下还是可以定义在main.js中的 我们这里就以定义在main.js中为例 ...

  7. vue.js定义全局变量

    在此次VUE项目中需要使用到全局变量.在此记录一下我的解决方法. 在main.js文件里面直接定义全局变量,如: //全局变量 Vue.prototype.host = "http://19 ...

  8. Vue项目定义js公用方法

    1.使用脚手架搭建vue项目 2.创建一个新的js文件,文件位置根据个人习惯来放 接下来编写这个js文件,我是用来去掉富文本编辑器自带的标签和样式 // 将获取的富文本编辑器转过来的html格式转文字 ...

  9. 微信小程序—使用app.js里定义的全局方法

    微信小程序-使用全局方法 1.在app.js里定义全局方法,例如getData()方法 2.在index.js里使用全局方法getData() 首先获取全局let app = getApp(): 然后 ...

  10. C | C++定义全局变量的方法

    我们想定义一个全局变量,能够在多个文件中使用,举例说明比如说三个文件main.c hello.c hello.h 想在main.c和hello.c中使用一个名字为a的变量,可能大家会简单地想直接在he ...

最新文章

  1. 【JavsScript】推荐五款流行的JavaScript模板引擎
  2. SAMBA服务器应用
  3. Activity和Intent,打电话,发送短信
  4. 关于面试的一些问题合集
  5. 0基础学python难吗-0基础学Python有多难?该怎么入门?
  6. 基于Netty+Zookeeper实现Dubbo
  7. selenium自动化测试_为什么在生产中进行Selenium自动化测试对于您的下一个版本至关重要?...
  8. 接收二进制数据_详解前端websocket原理之数据传输协议
  9. 代码管理_阿里巴巴如何管理代码分支?
  10. Python进阶(十一)装饰器
  11. java hashmap value值_如何在Java中的HashMap中打印键的所有值
  12. 车位编号lisp_CAD自动编号操作
  13. 松下PLC远程编程调试流程
  14. 简单谈谈对软件工程的理解
  15. 需要账号密码验证的代理ip使用
  16. win10安装inventor失败,怎么强力卸载删除注册表并重新安装
  17. 二年级课程表(3月14日-3月18日)
  18. nginx转发https:SSL_do_handshake() failed
  19. oracle字符串函数(转)
  20. matlab深度遍历算法,数据结构算法之动态规划(深度优先遍历)

热门文章

  1. 麻将--国标麻将番种图解 联众麻将规则图解
  2. 腾讯云Intel Xeon Cascade Lake 8255C(2.5 GHz)处理器性能评测
  3. 企业员工生日提醒短信怎么发送
  4. 如何找到win10系统当前使用的壁纸位置
  5. [阅读笔记1]Data Poisoning Attacks to Deep Learning BasedRecommender Systems
  6. 硬盘显示设备未就绪,要怎么恢复资料
  7. 国内有哪些云服务器比较靠谱?
  8. 鸿蒙系统2.0崩溃了,集体失声?鸿蒙系统官宣后,鸿蒙系统的真实现状显现
  9. 虚幻引擎5.1现已发布!
  10. 计算机端口com1,访问端口“COM1”被拒绝(Access to the port “COM1” is denied)