2016-07-14 40 views
0

每當發生狀態變化時,我都會看到一個新狀態,而不是突變舊狀態。我想知道每次創建新對象對我們都有好處。有一件事我讀了它將有助於調試,因爲所有的狀態都將從應用程序的開始在瀏覽器中呈現,所以我們可以切換到任何我們想要的狀態。但是關於記憶,存儲所有商店會吃掉記憶,對吧?請糾正我。我們將如何利用不變性來提高應用的性能。我是新來的反應和redux。而我無法找出確切的答案。請用非常簡單的話來幫助我。 :)如何在我的還原反應應用程序中利用不變性?

回答

3

但有關內存,存儲所有的商店會因爲存儲僅保留的事實吃什麼內存

首先,在終極版有隻是一個單店,所有的第二,原始數據類型,即使是非常複雜的應用程序的內存開銷也非常小,您不必擔心它。你會比記憶更早遇到更大的問題,當你這樣做時,你會處理它,但不會更快 - 這將是預先優化。從終極版FAQ http://redux.js.org/docs/FAQ.html#performance-state-memory

和一些更多的信息,我們將如何利用不變性,以增加我們的應用程序的性能

的概念是不重要的,因爲陣營基地的比較的渲染,如果事情已經改變在樹中,比較操作需要儘可能快。進入不變性。例如,給定兩個對象,您不需要通過按鍵來確定它是否相同(例如,Angular 1.x以這種方式工作),您只需比較obj1 === obj2和繁榮,就完成了。如果兩個對象指向內存中的相同地址(幕後),它們是相等的,否則它們不是。

+0

謝謝你WTK。我從來沒有想過這樣。將閱讀更多關於它 – scripter

相關問題