官术网_书友最值得收藏!

2.4 memoryHistory

2.4.1 創(chuàng)建memoryHistory

可通過調(diào)用createMemoryHistory創(chuàng)建memoryHistory:

對(duì)于內(nèi)存路由,其運(yùn)行環(huán)境通常不在瀏覽器內(nèi),一般作為測(cè)試使用或如React Native原生環(huán)境。在創(chuàng)建memoryHistory時(shí),除了history配置,如keyLength、getUserConfirmation,還可傳入initialEntries、initialIndex,其聲明如下:

注意,basename在memoryHistory中不被支持。

initialEntries類似于Browser Router或Hash Router的歷史棧,它確定了初始化的棧內(nèi)容。由于是內(nèi)存路由,這個(gè)歷史棧僅能由history庫(kù)進(jìn)行記錄。initialIndex表示初始的棧指針位置。它們默認(rèn)的值如下:

initialEntries的默認(rèn)值為擁有初始入口“/”的一個(gè)棧記錄,initialIndex的默認(rèn)值為0。

對(duì)于memoryHistory,其除了通用的history的屬性,還多出index、entries和canGo屬性。

entries為歷史棧數(shù)組,比起browserHistory與hashHistory,memoryHistory能獲取所有的歷史記錄,如上一個(gè)導(dǎo)航地址、第一個(gè)導(dǎo)航地址等。index為當(dāng)前歷史棧指針的指針位置,需要獲取當(dāng)前的地址,可從history.entries[history.index]中獲取,其也等價(jià)于history.location。history.length即等價(jià)于entries.length。對(duì)于memoryHistory,其canGo屬性用來判斷跳轉(zhuǎn)位置n是否可以跳轉(zhuǎn)。

主站蜘蛛池模板: 萨嘎县| 临邑县| 监利县| 澄迈县| 陕西省| 石门县| 化州市| 辉南县| 五寨县| 得荣县| 通榆县| 乐山市| 桑植县| 徐水县| 古丈县| 昌吉市| 阳江市| 淳安县| 晴隆县| 葵青区| 鹤山市| 志丹县| 化德县| 五华县| 台东市| 社会| 将乐县| 阳谷县| 沙坪坝区| 桦川县| 太和县| 沙湾县| 永嘉县| 福贡县| 荔波县| 泰宁县| 介休市| 铁力市| 望都县| 广安市| 茌平县|