假设我有一个像这样的简单组件:
export default function Foo({someProp}) {
const a = Math.random();
return <div>{a}{someProp}</div>
}
据我所知,当someProp
次更新时,React将触发重新渲染.它会再次执行整个Foo
函数并重新分配const a
一个新的随机值吗?该值是否会显示在<div>
中?
假设我有一个像这样的简单组件:
export default function Foo({someProp}) {
const a = Math.random();
return <div>{a}{someProp}</div>
}
据我所知,当someProp
次更新时,React将触发重新渲染.它会再次执行整个Foo
函数并重新分配const a
一个新的随机值吗?该值是否会显示在<div>
中?
你每个问题的答案都是yes.如您所说,当有props
个更改时,以及当有state
个更改时,会触发重新渲染.在重新渲染时,以及在第一次渲染时,所有的行为都与普通JavaScript函数中的行为类似,比如分配变量和其他所有内容,除了一些与React挂钩相关的内容,比如state
与useState
组成,ref
与useRef
组成...