在React中,当你点击按钮时,如果按钮的type
属性没有明确指定,它的默认值是submit
。这意味着如果这个按钮被放置在一个<form>
表单中,点击它会触发表单的提交行为,导致页面刷新。
在你的代码中,展开/折叠按钮没有指定type
属性,因此它的默认值是submit
,当你点击这个按钮时,如果它在表单中,就会导致页面刷新。
解决方法
为按钮明确指定type="button"
,这样点击按钮时就不会触发表单提交行为,从而避免页面刷新。
<buttontype="button" // 添加这一行onClick={() => this.click()}
>
</button>