Component 中任一 state 、 props 狀態更新,即會整個 component 重新 render ,但 React 底層做法,會根據 dom 去比對實際需要更新哪些 dom ,詳細請見 React Document 關於 一致性比較 ( Reconciliation )
Reference : https://lucybain.com/blog/2017/react-js-when-to-rerender/
關於 Render 的測試
任一 state 變動,會觸發整個 component re-render ,但比對後無需變動的 state 則會維持現有值, ref 則完全存在於 render’s life cycle,不論 re-render 幾次,值都會持續存在;除非整個 component 重新 mount