ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

MobX 的 Observable Array,如何转换成一个普通的数组

MobX 的 Observable Array,如何转换成一个普通的数组

问题描述

访问mobx store里面的数据时打印结果为如下,是一个 MobX 的 Observable Array,而不是一个普通的数组。MobX 使用 Proxy 来实现响应式数据,因此打印的结果为的是 Proxy 对象。可是我需要的是实际的数组数据。

Proxy {0: Proxy, 1: Proxy, 2: Proxy, Symbol(mobx administration): ObservableArrayAdministration2}

解决方案

如果你想要访问实际的数组数据,可以通过调用 MobX 的 toJS 函数将其转换为普通 JavaScript 对象。

import { toJS } from 'mobx';
consst navData = toJS(store.navData)
console.log('实际数组', navData);

运行结果

返回列表