React render twice bug_render React render twice bug React bug React.StrictMode StrictMode



React render twice bug

React bug

constructor render twice bug

React render twice bug_render



update render twice bug



StrictMode

​https://reactjs.org/docs/strict-mode.html​

StrictMode 是用于突出显示应用程序中潜在问题的工具。

与Fragment一样,StrictMode不会呈现任何可见的UI。

它为后代激活其他检查和警告。

注意: 严格模式检查仅在开发模式下运行;它们不会影响生产。


import React from 'react';

function ExampleApplication() {
return (
<div>
<Header />
<React.StrictMode>
<div>
<ComponentOne />
<ComponentTwo />
</div>
</React.StrictMode>
<Footer />
</div>
);
}


demos

render twice bug ❌


ReactDOM.render(
<React.StrictMode>
<App />
</React.StrictMode>,
document.getElementById('root')
);


React render twice bug_render twice_03

render once OK ✅


ReactDOM.render(
<>
<App />
</>,
document.getElementById('root')
);


React render twice bug_React_04