和class組件的寫法不同,hook使用mobx需要在組件的最外層包裹一層mobx-react提供的observer,在沒有包裹observer的情況下可以拿到mobx的數據也可以改變mobx的數據,但是改變之後不會觸發視圖的更新。
import React from 'react';
import { withRouter } from 'react-router-dom'
import store from '../../mobxStore/mobx'
import {observer} from 'mobx-react'
function Hookcom (props) {
return (
<div>
<div onClick={() => {
store.module1.setName('1234567890')
}}>
{store.module1.name}
</div>
</div>
);
}
export default withRouter(observer(Hookcom))
mobx的安裝配置見https://blog.csdn.net/qq_40816649/article/details/100655462