You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vue中无法访问Proxy数组内models属性的问题咨询

问题分析与解决

你遇到的核心问题是传入的Proxy对象是数组的直接包装,而非包含models属性的对象,所以sesh.models自然会返回undefined。从控制台输出的Proxy(Array) {0: {…}}能看出来,这个Proxy本质就是数组本身,不是带models字段的对象结构。

修正代码

直接针对数组Proxy处理即可,不需要访问models属性:

loadSessionObject(sesh) {
    if (sesh) {
        console.log("session output", sesh);
        // 校验是否为数组后返回,Proxy数组可正常使用数组方法
        return Array.isArray(sesh) ? sesh : [];
    }
    return [];
},

如果需要把Proxy转为普通数组(避免后续Proxy拦截逻辑影响),可以用:

return Array.isArray(sesh) ? [...sesh] : [];
// 或者使用 Array.from(sesh)

补充说明

你之前的代码逻辑是基于“传入的是包含models数组的对象”来写的,但实际传入的是数组的Proxy实例,两者结构完全不同。如果原本业务逻辑应该传入{ models: [...] }结构的对象,需要检查上游代码是否传错了参数。

内容的提问来源于stack exchange,提问作者Marquardt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 07:52:02