当 标签的 href 属性遇到 router.push 点击事件
今天在新增用户注册功能时,点击去注册按钮,发现页面刷新后,马上又回到了登录页面,并没有跳转到注册页面。反复排查了几个小时,最后发现问题在于
<a> 标签的 href 属性和
router.push
点击事件同时生效,导致页面刷新,没有正常跳转。
问题原因
具体代码详见 GitHub,出问题的在源文件的第 50 行:
1 | <!-- 跳转按钮 --> |
今天在新增用户注册功能时,点击去注册按钮,发现页面刷新后,马上又回到了登录页面,并没有跳转到注册页面。反复排查了几个小时,最后发现问题在于
<a> 标签的 href 属性和
router.push
点击事件同时生效,导致页面刷新,没有正常跳转。
具体代码详见 GitHub,出问题的在源文件的第 50 行:
1 | <!-- 跳转按钮 --> |
在 GitHub 上,导航到存储库的主页面。
在存储库名称下,单击 “设置”。 如果看不到 “设置” 选项卡,请选择 “” 下拉菜单,然后单击 “设置”。
存储库标头的屏幕截图,其中显示了选项卡。 “设置”选项卡以深橙色边框突出显示。 在 “默认分支” 下,在默认分支名称的右侧,单击 。
选择分支下拉菜单,然后单击分支名称。
单击 “更新”。
阅读警告,然后单击 “我了解,请更新默认分支”。
那是周一凌晨 2 点,我正在疯狂地调试一个 bug,这个 bug 必须在 7 小时后的演示前解决。我实在想不通为什么会出现这个问题。但我明确知道的是:这个问题在之前的版本中并不存在。
这个项目由两个部分组成:一个运行着我用 C 语言编写的固件的设备,以及一个我用 Swift 语言编写的 iPadOS 应用程序。我相当确定这个 bug 存在于固件方面。
工作版本和有 bug 的版本之间有超过 100 次的提交,因此无法立即看出是什么更改导致了 bug。