将Vue数组转换为代理对象
P粉476046165
P粉476046165 2023-09-16 19:32:12
[JavaScript讨论组]

我是Vue的新手。在制作这个组件的过程中,我在这里遇到了困难。

我使用以下代码向API发出AJAX请求,该API返回一个数组:


问题是,this.tickets被设置为一个Proxy对象,而不是我从API获取的Array

我在这里做错了什么?

P粉476046165
P粉476046165

全部回复(2)
P粉071626364

如果您想要响应式信息,请使用 toRaw https://vuejs.org/api/reactivity-advanced.html#toraw

const foo = {}
    const reactiveFoo = reactive(foo)
    
    console.log(toRaw(reactiveFoo) === foo) // true

或者如果您不想要 ref 包装器包围您的信息,请使用 unref

https://vuejs.org/api/reactivity-utilities.html#unref

P粉203792468

像您的票务等数据中的项目被转换为可观察对象。这是为了实现响应性(自动重新渲染UI和其他功能)。这是预期的,返回的对象应该像数组一样工作。

查看响应性文档,因为您需要以特定的模式与数组交互,否则它不会在UI上更新:https://v3.vuejs.org/guide/reactivity-fundamentals.html

如果您不想要响应性 - 也许您从不在客户端更新票务,只想显示它们 - 您可以在response.data上使用Object.freeze()方法。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号