vue定义全局变量

vue定义全局变量1 将从服务器请求的数据作为全局变量 全局变量模块挂载到 Vue prototype 在开发中 有时需要将从接口请求到的一些数据当做全局变量 在其他页面多次使用 比如 登录成功后可能需要将用户名 id 等信息存起来 便于其他页面展示或使用 将这些信息定义为全局变量是用起来就很方便 举栗子 在 login vue 中拿到了用户的一些信息 script importVuef script

1、将从服务器请求的数据作为全局变量(全局变量模块挂载到Vue.prototype)

<script> import Vue from 'vue' //注意,要在这个页面中引入vue,不然下面的Vue.prototype会报错 export default { 
    data(){ 
    return{ 
   } }, methods:{ 
    login(){ 
    const userMsg = { 
    userId : 123, userName : '张三', userSite : '上海市浦东新区' } Vue.prototype.$userMsg = userMsg; //将全局变量模块挂载到Vue.prototype中 this.$router.push({ 
   path:'/index2'}); }, } } </script> 

在另一个页面使用:

alert(this.$userMsg.userSite); //拿到在login.vue中的用户位置 

2、在全局的js中自定义全局变量

命名global.js为全局js,自定义全局变量:

const host = 'localhost:8080'; const token = 'abcdefg'; const city = '上海'; export default{ 
    host, //地址 token, //用户token信息 city //位置 } 

在vue页面中使用:

<template> <div> <button @click="clickMe">点我 
     button>  
      div>  
       template> <script> import global_msg from '../js/global.js' //注意文件路径,实际路径以项目目录结构为准 export default { 
        data(){ 
        return{ 
       } }, methods:{ 
        clickMe(){ 
        alert(global_msg.host); //localhost:8080 } } }  
        script> 

3、在main.js中将global.js挂载到Vue.prototype中

将上面例子中的global.js在入口文件main.js中引入并挂载:

import global_msg from './js/global.js' //注意文件路径,实际路径以项目目录结构为准 Vue.prototype.$global_msg = global_msg; 

在页面中使用:

<template> <div> <button @click="clickMe">点我 
     button>  
      div>  
       template> <script> export default { 
        data(){ 
        return{ 
       } }, methods:{ 
        clickMe(){ 
        alert(this.$global_msg.host); //localhost:8080 } } }  
        script> 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/221663.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午5:34
下一篇 2026年3月17日 下午5:34


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号