-
mobx的api??:?{?observable,?isArrayLike}
map的屬性/方法.set()? .has() .delete()
查看全部 -
一、computed
把其他可觀察數(shù)據(jù)用自己的方式組合成新的可觀察數(shù)據(jù)?
二、autorun
當(dāng)可觀察數(shù)據(jù)發(fā)生變化,自動執(zhí)行對可觀察數(shù)據(jù)依賴的行為,既回調(diào)
三、when
用作某條件成立才執(zhí)行某邏輯的情況,是一個(gè)簡單的api
四、reaction
autorun?的變種,對于如何追蹤 observable 賦予了更細(xì)粒度的控制。
查看全部 -
decorator修飾器語法
在聲明階段實(shí)現(xiàn)類和類成員注解的一種語法,本質(zhì)是一個(gè)函數(shù)
查看全部 -
1、mobx是什么
Simple,scalable state management 簡單可擴(kuò)展的狀態(tài)管理
2、mobx優(yōu)勢
開發(fā)難度低、開發(fā)代碼量少、渲染性能好
3、mobx的核心思想
狀態(tài)變化引起的副作用應(yīng)該被自動觸發(fā)
查看全部 -
細(xì)粒度拆分視圖組件
使用專用組件處理列表
盡可能晚地解構(gòu)可觀察數(shù)據(jù)
查看全部 -
todo 222
查看全部 -
computed
查看全部 -
disposers<br/>查看全部
-
observe
查看全部 -
webpack.js
查看全部 -
observable被當(dāng)作是裝飾器使用的時(shí)候,就算是原始類型值,也是使用observable裝飾,他會自動判別數(shù)據(jù)類型,自動轉(zhuǎn)換是用observable.box還是observable
查看全部 -
提升渲染性能的三大法則
查看全部 -
mobx-react已經(jīng)為react組件實(shí)現(xiàn)了一個(gè)shouldComponentUpdate方法,不需要重新定義一個(gè),
查看全部 -
mobx-react 可以將react的render方法包裝成autorun,這樣執(zhí)行action就會觸發(fā)組件重渲染了
observer是一個(gè)修飾器,不是修飾類成員的,而是修飾類本身的
修飾那個(gè)真正使用了可觀察數(shù)據(jù)的組件,當(dāng)action執(zhí)行的時(shí)候,這個(gè)組件就會重新渲染
對于沒有使用可觀察數(shù)據(jù)的組件,被修飾了也不會有副作用,考慮到可擴(kuò)展,建議修飾所有用到的react組件
查看全部 -
import { PropTypes } from 'mobx-react'
static propTypes = {
????cache: PropTypes.observableObject
}
查看全部 -
可觀察的數(shù)組并不是一個(gè)真正的數(shù)據(jù),用Array.isArray判斷是false
查看全部 -
runInAction可以接受一個(gè)字符串類型的參數(shù),就像是裝飾器修飾的form名一樣,一般來說對于調(diào)試是比較友好的
runInAction('modify', () => {
????store.string = ''
})?
查看全部 -
action.bound 將被修飾的方法的上下文強(qiáng)制綁定到該對象上
使用場景:將方法作為callback傳給其他對象時(shí)
無論是action還是action.bound都需要綁定在預(yù)先定義的對象方法上
runInAction:
mobx提供了一種語法糖:允許隨時(shí)定義一個(gè)匿名的action方法,并運(yùn)行它
查看全部 -
action可以作為普通函數(shù)或者裝飾器
查看全部 -
直接向變量賦值的操作改變可觀察數(shù)據(jù):每次的修改都會觸發(fā)autorun或者reaction的運(yùn)行,這種高頻的觸發(fā)操作是沒有必要的。
比如用戶對視圖的一次點(diǎn)擊操作,需要同步修改多個(gè)狀態(tài)變量,但是視圖的更新卻只需要一次。
為了優(yōu)化這個(gè)問題,引入action
使用action的收益:將多次對狀態(tài)的賦值合并為一次
查看全部
舉報(bào)