将公共数据挂在 Vue 原型上(简单、适合 CDN)

在common.js里获取共同的数据后,统一挂载到vue原型上,不用每个页面都调用

Vue.observable 让对象变成响应式,一处修改,所有用到的地方自动更新。

无需混入 data,避免了数据副本问题。

Vue.observable(\[\]) 的作用是将一个普通对象(或数组)转化为响应式对象。

Vue.observable({ name: '', age: 0 }) 括号里面的就是初始值

javascript 复制代码
// 在 common.js 中,new Vue 之前
const store = {
    paylist: Vue.observable([]),   // 创建响应式对象
    memberlevel: Vue.observable({ name: '', age: 0 }),
    // ... 其他数据
};

// 挂载到 Vue 原型,所有组件通过 this.$store.xxx 访问
Vue.prototype.$store = store;

// 在根组件中更新数据
getindexdatas() {
    $.ajax({
        success: (res) => {
            this.$store.paylist = res.data.paylist;   // 更新共享数据
        }
    })
}

// 在任何组件中读取
console.log(this.$store.paylist);

或者直接写变量,不用中间的$store 变量

javascript 复制代码
// 在 common.js 中,new Vue 之前

// 挂载到 Vue 原型,所有组件通过 this.$store.xxx 访问
Vue.prototype.paylist = Vue.observable([])   // 创建响应式对象
Vue.prototype.memberlevel= Vue.observable({ name: '', age: 0 })   // 创建响应式对象
// ... 其他数据

// 在根组件中更新数据
getindexdatas() {
    $.ajax({
        success: (res) => {
            this.paylist = res.data.paylist;   // 更新共享数据
        }
    })
}

// 在任何组件中读取
console.log(this.paylist);

免费在线工具网站 https://mantools.top

相关推荐
IT_陈寒几秒前
Vite的热更新突然不香了,排查三小时差点砸键盘
前端·人工智能·后端
子兮曰27 分钟前
Agency-Agents 深度解析:400+ AI 专家的"梦之队"如何重塑开发工作流
前端·后端·vibecoding
山河木马1 小时前
渲染管线-计算得到gl_Position(顶点着色器)之后续GPU流程
javascript·webgl·图形学
竹林8181 小时前
用 The Graph 查询链上数据实战:从手搓 RPC 到 Subgraph,我的 NFT 项目数据加载快了 10 倍
前端·javascript
妙码生花1 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(十九):点选验证码代码逐行目检
前端·后端·go
Awu12272 小时前
⚡从零开发 Agent CLI(五)实现一个可治理、可扩展的工具系统
前端·人工智能·claude
咪库咪库咪3 小时前
Vue3-生命周期
前端
莪_幻尘3 小时前
你的 AI Skill 越多越蠢?Token 上下文爆炸的求生指南
前端·ai编程
lichenyang4533 小时前
从 has.echo 到异步 API 注册表:一次 ASCF API 回调不触发的排查复盘
前端
林瞅瞅4 小时前
Nuxt3 项目部署 Nginx 防盗链后特定 JS 文件 403 问题修复方案
前端