最近專案中使用redux-form遇上效能瓶頸,
需要100行以上聯動表單變得極其卡
下面**我在formmembers裡遍歷了fields,所以formmembers重新渲染時會導致fields全部重新渲染。
優化後使用shouldcomponentupdate控制到每一行及每乙個輸入框的重新渲染,提高了非常多的效能!
優化前**及結構
//表單
class form extends component
}//members
class formmembers extends component=this.props;
return(
.name`} component=/>
)})}
) }}//數字輸入框
class field extends component=this.props;
return}}
複製**
優化後
import isequal from "lodash/isequal";
//表單
class form extends component
}//members
class formmembers extends component=this.props;
return(
) }}
//每行重新整理控制
class line extends component;
} shouldcomponentupdate(nextprops,nextstate)
return
false;
} render
().name`} component=/>
) }}//數字輸入框
class field extends component
return
true
} render
()=this.props;
return}}
複製**
github.com/reactjs/res… mysql效能優化 mysql效能優化
優化方式 1.空間換時間 冗餘 2.時間換空間 字段優先使用型別 int date char varchar text 索引型別 btree索引 hash索引 索引的葉子下,存放乙個資訊指向所在行的資料位址。btree有利於範圍查詢,hash有利於精確查詢。btree用的更多一些。btree索引的常...
效能優化 電量優化
使用battery historian來監測電量的情況,battery historian時google的乙個開源專案 具體安裝過程參見 當出現下列畫面,說明已經開啟 其開啟成功以後,訪問網頁如下所示 說明 這裡使用的是一台國外的vps伺服器,原本是想在本地虛擬機器實驗的,一直連線超時,就換成了vp...
效能優化 儲存優化
android系統提供4中基本的資料儲存方式,分別是sharedpreference 檔案儲存 sqlite資料庫 contentprovider。sharedpreference sharedpreference是一種簡單便捷的儲存方式,常用來儲存一些簡單配置資訊。儲存路徑 sharedprefe...