我正在创建一个新的块插件,我担心它edit
函数被调用的次数太多。我不确定这是不是正确的术语,因为我对JavaScript、React等都是新手。。。,但是,看起来useState
导致重新渲染。如果我有一个非常简单的edit
:
import { useState } from \'@wordpress/element\';
export default function MyEdit( props ) {
const {
attributes: {
anAttribute
},
setAttributes,
} = props;
const [ isValidating, setIsValidating ] = useState( false );
const post_id = wp.data.select("core/editor").getCurrentPostId();
console.log(\'Post ID is \', post_id);
const MyPlaceholder = () => {
return(
<div>this is a test</div>
);
};
const Component = MyPlaceholder;
return <Component />;
}
那么
console.log
每篇文章/页面上的区块都会被点击两次。我不想过度优化,但同样,我也不知道这意味着什么(页面上的每个脚本都会被重新执行两次吗?)。这是预期的行为
useState
? 我做错什么了吗?我必须担心吗(从速度的角度来看,从潜在的比赛条件来看,一切都被多次重新渲染)?