#reactjs #mobx #mobx-react
#reactjs #mobx #mobx-реагирует
Вопрос:
Здравствуйте, я использую mobx 4, только что перейдя к mobx 5, и я заметил, что синтаксис и некоторые из прочитанных вами наблюдаемых переменных изменились, я пытаюсь войти в консоль.регистрируйте вывод некоторых данных, которые я получаю с маршрута, но я вижу прокси и некоторые другие вещи. Скриншоты размещены ниже, и объяснение будет с благодарностью.
Вот что у меня есть в коде.
const { team } = this.props.teamStore;
console.log(this.props.teamStore)
const userTeams = !!team ? team : null;
console.log(userTeams)
return (
<div className="text-center mt-40">
<div>Home page again lets get it.</div>
{this.getTeams()}
</div>
);
Вот странный результат, с которым я столкнулся
[[Handler]]: Object
[[Target]]: Array(3)
[[IsRevoked]]: false
Ответ №1:
Это нормально, MobX 5 использует Proxy
под капотом (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy ), и это то, что он делает с вашими наблюдаемыми данными.
Вы можете попробовать использовать toJS
метод для своих данных, если хотите обычный вывод на консоль, например:
import { toJS } from 'mobx';
// ...
console.log(toJS(userTeams))
Подробнее здесь: https://www.mobxjs.com/refguide/tojson.html