React版本:15.4.2
**翻譯:xiyoki **
使用React,很容易跟蹤通過(guò)你React組件的數(shù)據(jù)流帕识。當(dāng)你觀察一個(gè)組件萌庆,你可以看哪些props正在被傳遞斥扛,這使得推導(dǎo)你的應(yīng)用程序很容易府阀。
在某些情況下缆镣,你想通過(guò)組件樹(shù)傳遞數(shù)據(jù),而不必在每個(gè)層級(jí)上手動(dòng)向下傳遞props试浙。在React中董瞻,使用"context" API 就能直接做到這一點(diǎn)。
Why Not To Use Context(為什么不使用上下文)
絕大多數(shù)應(yīng)用程序不需要使用context田巴。
如果你希望你的應(yīng)用程序是穩(wěn)定的钠糊,那么不要使用context。這是一個(gè)實(shí)驗(yàn)性API壹哺,它可能會(huì)在未來(lái)的React版本中打破抄伍。
如果你不熟悉狀態(tài)管理庫(kù)如 Redux 或 MobX,不要使用context管宵。對(duì)于許多應(yīng)用程序截珍,這些庫(kù)及其React綁定是管理與許多組件相關(guān)的狀態(tài)的不錯(cuò)選擇。Redux很可能是你問(wèn)題的正確解決方案箩朴,而不是context岗喉。
如果你不是一個(gè)有經(jīng)驗(yàn)的React開(kāi)發(fā)人員,不要使用context炸庞。通常有一個(gè)更好的方法來(lái)實(shí)現(xiàn)功能钱床,只使用props和state。
如果你堅(jiān)持使用context埠居,盡管有這些警告查牌,請(qǐng)嘗試將context隔離到一個(gè)小區(qū)域,并避免在可能時(shí)直接使用 context API滥壕,以便在API更改時(shí)更容易升級(jí)纸颜。
...待更新。