button造成的异常跳转问题解决一例

今天下午遇到一个比较坑的问题,严格来说是没意识到。
情形:vue页面通过两个button按钮,控制不同组件页面显示,页面有缓存属性
问题:首次进入页面点击某个按钮,切换到另一个页面,页面闪白后出现刷新,又跳回至默认页面,再次点击按钮,正常切换至另一个页面
原因:button按钮自身带有提交表单属性,正好页面有form表单,导致页面再次执行查询操作,造成页面刷新,回到默认页面
解决:click事件添加prevent属性,阻止button默认的提交事件

1
<button @click.prevent="clickTest"></button>

备注:养成按钮点击事件添加stop或者prevent属性,避免因冒泡或者自身属性的异常问题