在React Router v4中设置<Link>
组件的最佳方法是什么?如果<Link>
只是一个锚标签,它不应该嵌套在里面的<button>
元素。它也不应该嵌套在按钮内(因为它没有任何意义),所以最有效的方法是将它设置为按钮。这种方法的缺点是什么?
自从添加了accessibility
标签后,我将从这个角度回答。
首先确定您是否需要链接或按钮。链接用于导航目的。它会将您带到另一个页面或当前页面上的其他位置。按钮用于执行操作。
因此,您需要决定用户选择元素时应该发生什么。您是导航(链接)还是执行操作(按钮)?
如果您使用链接并将其设置为按钮,因为您希望执行操作,例如“添加到购物车”或“注册”或“登录”,则需要处理以下几个辅助功能问题:
role
需要设置为button
但是,如果您只使用<button>而不是<a>,则可以更轻松地解决此问题。见first rule of ARIA。