首先贴出报错信息:
出错原因:
import { autorun, observable, map} from 'mobx';
import React from 'react';
import {Text} from 'react-native';
export default function demo10() {
const foo = map({});
autorun(()=>{
console.log(`map have ${foo.size} keys`);
});
foo.set('foo',1);
foo.set('bar',1);
foo.set('foo',2);
foo.delete('bar');
return <Text style={{margin:100}}>444</Text>
}
解决办法:
map写法应该如下:
import { autorun, observable, map} from 'mobx';
import React from 'react';
import {Text} from 'react-native';
export default function demo10() {
const foo = observable.shallowMap({});
autorun(()=>{
console.log(`map have ${foo.size} keys`);
});
foo.set('foo',1);
foo.set('bar',1);
foo.set('foo',2);
foo.delete('bar');
return <Text style={{margin:100}}>444</Text>
}