【发布时间】:2019-10-03 13:01:24
【问题描述】:
我有一个父组件,在其中我包含了一个带有道具的子组件。 但是当父组件(与子组件无关)中的任何状态发生更改时,子组件会重新渲染。我不想重新渲染 在每次状态变化时。我们可以停下来吗?
import React, { useState } from "react";
import ReactDOM from "react-dom";
import Child from "./child";
import "./styles.css";
function App() {
const [any_state, setAnyState] = useState(false);
const handleClick = () => {
setAnyState(!any_state);
};
return (
<div className="App">
Parent Page ({any_state ? "true" : "false"})
<br />
<button onClick={handleClick}>Click me</button>
<Child data={"any data"} />
</div>
);
}
const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);
child.js
import React from "react";
function Child(props) {
console.log("child component");
return <div className="App">child Page</div>;
}
export default Child;
https://codesandbox.io/s/clever-oskar-fpxm3?fontsize=14
我不希望每次状态更改时都在控制台中显示“子组件”。
【问题讨论】:
标签: javascript reactjs