一、单文件引入

1、创建存放全局变量和方法的vue文件

  Common.uve

<script>
const userName = 'yangjing';
function add(a,b) {
return a+ b
}
export default {
userName,
add
}
</script>

2、在需要使用的组件(A组件和B组件)中引入Common.uve

<template>
<div>
<h2 @click="changeName">{{name}}</h2>
<h2 @click="add">3+6 = {{num}}</h2>
</div>
</template> <script>
import Common from '@/components/Common'
export default {
name: "Details",
data () {
return {
name: Common.userName,
num: ''
}
},
methods: {
add() {
this.num = Common.add(3,6)
}
}
}
</script>

在A组件中修改全局变量userName时在B组件中可以看到userName是更新了的

二、全局引入 全局变量模块挂载到vue原型中

如果再项目中在多个地方使用全局变量和方法用第一种方式引入肯定是相当繁琐的,因为需要在使用的地方都要引入一次;那么为了提高效率现在在main.js中引入一次然后挂载到vue原型上(Vue.portotype)

1、在main.js中引入文件,并挂载到Vue原型上

import Common from '@/components/Common'
Vue.prototype.Common = Common;

2、在需要使用的组件中使用 this

<template>
<div>
<h2 @click="changeName">{{name}}</h2>
<h2 @click="add">3+6 = {{num}}</h2>
</div>
</template> <script>
export default {
name: "Details",
data () {
return {
name: this.Common.userName,
num: ''
}
},
methods: {
add() {
this.num = this.Common.add(3,6)
}
}
}
</script>

拓展:

三、使用Vue中的状态管理Vuex

如果数据量小则不推荐使用Vuex,杀鸡就不用宰牛刀了吧。

详细使用:https://www.cnblogs.com/yangchin9/p/11003791.html

四、使用本地存储(webstorage)存放全局变量

本地存储分两种 localStorage 和 sessionStorage

localStorage:永久性,一直存在于浏览器中,除非用户手动清除localStorage;一般为5M浏览器不同有些许区别;不参与和服务器的通信。

sessionStorage:在当前会话下有效,关闭页面和浏览器清除后失效;一般为5M浏览器不同有些许区别;不参与和服务器的通信。

API:二者的api形式相同

localStorage.setItem("key","value");  //以“key”为名称存储一个值“value”

localStorage.getItem("key");  //获取名称为“key”的值

localStorage.removeItem("key");  //删除名称为“key”的信息。

localStorage.clear();  ​//清空localStorage中所有信息

五、使用Cookie存储

这种方式极不推荐,毕竟大小限制,还需要设置过期时间。
cookie在过期时间之前一直有效即使窗口或浏览器关闭;存放数据大小为4k左右;有个数限制(随浏览不同)一般不能超过20个;与服务端通信,每次都会携带在HTTP头中,如果使用cookie保存过多数据会带来性能问题。

Vue-全局变量和方法的更多相关文章

  1. vue + typescript,定义全局变量或者方法

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

  2. vue.js之生命周期,防止闪烁,计算属性的使用,vue实例简单方法和循环重复数据

    摘要:今天是比较糟糕的一天没怎么学习,原因是学校的wifi连不上了~~.今天学习一下vue的生命周期,如何防止闪烁(也就是用户看得到花括号),计算属性的使用,vue实例简单方法,以及当有重复数据时如何 ...

  3. vue数组变异方法

    Vue数组变异方法,会改变被这些方法调用的原始数组,将会触发视图更新 push() 接收任意数量的参数,把它们逐个添加到数组末尾,并返回修改后数组的长度 pop() 从数组末尾移除最后一项,减少数组的 ...

  4. vue学习笔记(四)- cmd无法识别vue命令解决方法

    解决控制台无法识别vue命令问题 作者:狐狸家的鱼 本文链接:cmd无法识别vue命令解决方法 GitHub:sueRimn 在控制台输入vue会报以下错误: vue : 无法将“vue”项识别为 c ...

  5. vue教程2-04 vue实例简单方法

    vue教程2-04 vue实例简单方法 vue实例简单方法: vm.$el -> 就是元素 vm.$data -> 就是data <!DOCTYPE html> <htm ...

  6. Vue 生命周期方法

    一.Vue 生命周期 Vue的生命周期即是实例从创建到销毁的一个过程.之前在学习Vue的时候,看过官网的教程,但是经常用到的是mounted,所以对其他生命周期方法不是很熟悉,这里有空做个总结,也方便 ...

  7. python2.7 跨文件全局变量的方法

    有关python实现跨文件全局变量的方法. 在使用Python编写的应用的过程中,有时会遇到多个文件之间传递同一个全局变量的情况.文件1:globalvar.py #!/usr/bin/env pyt ...

  8. 【转】安装Vue.js的方法

    安装vue.js的方法   一.简介 Vue.js 是什么 Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的 渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量 ...

  9. 千锋教育Vue组件--vue基础的方法

    课程地址: https://ke.qq.com/course/251029#term_id=100295989 <!DOCTYPE html> <html> <head& ...

  10. Vue实例和方法

    github地址:https://github.com/manlili/vue_learn里面的lesson03 一 实例 每个 Vue 实例都会代理其 data 对象里所有的属性,改变data,vu ...

随机推荐

  1. Windows7自定义主题

    一.破解主题限制 Windows系统默认只能允许用户使用系统自带主题(非壁纸),即使用户安装了第三方主题,Windows也会限制很多地方,导致第三方主题用起来怪怪的. 故此,想要一个可以自定义主题的W ...

  2. [AST Babel Plugin] Hanlde ArrowFunction && FunctionExpression

    Continue with previous post: https://www.cnblogs.com/Answer1215/p/12342540.html Now we need to think ...

  3. 使用Powershell开机启动隐藏窗口的程序

    1.打开注册表找到键值:计算机\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run 2.添加字符串值:StartJetSer ...

  4. Iris_xorm

    xorm表基本操作及高级操作 表结构基本操作 对表结构的操作最常见的操作是查询和统计相关的方法,我们首先来看相关实现: 条件查询 Id值查询:参数接收主键字段的值.例如: var user User ...

  5. 事务:Transaction详解

    1.事务概念: 一组sql语句操作单元,组内所有SQL语句完成一个业务,如果整组成功:意味着全部SQL都实现:如果其中任何一个失败,意味着整个操作都失败.失败,意味着整个过程都是没有意义的.应该是数据 ...

  6. 查看Oracle的SID的方式

    1  使用组合键“Win + R”打开运行对话框,在输入框中输入 regedit 并回车打开“注册表编辑器”. 2   在“注册表编辑器”对话框,依次展开 HKEY_LOCAL_MACHINE\SOF ...

  7. Tex 论文写作 jpg eps图像

    pdflatex只能支持pdf.jpg.jpeg.png共4中格式的图片.所以在插入eps图像是会没法显示,使用latex编译不存在这个问题,但是,我还不会用,编译完后从哪里看不知道. 这个里面说的详 ...

  8. EF三种数据库操作模型比较

    https://blog.csdn.net/xiongmeiqin/article/details/80196089 EF 中 Code First 的数据迁移以及创建视图 写在前面: EF 中 Co ...

  9. 【visio】数据流图

    率属于 软件和数据库 又名 Gane-Sarson图,数据流图示描述系统数据流程关系的工具,它可以综合的反映出数据在系统中的来源.流动.处理和存储情况,可以将数据流形象具体的表现出来. 在大型项目中, ...

  10. 【资源分享】Half-Life(半条命)中英版

    *----------------------------------------------[下载区]----------------------------------------------* ...