相关疑难解决方法(0)

如何使按钮看起来像一个链接?

我需要使用CSS制作一个看起来像链接的按钮.更改已完成,但是当我单击它时,它显示为按下按钮.知道如何删除它,以便即使点击按钮也可以作为链接使用吗?

css button hyperlink

260
推荐指数
6
解决办法
22万
查看次数

反应16.9.0“ javascript :;” href替代?

更新到React 16.9.0之后,我得到了这样的警告:

警告:作为安全预防措施,未来版本的React将阻止javascript:URL。如果可以,请改用事件处理程序。如果您需要生成不安全的HTML,请尝试使用dragonallySetInnerHTML。React已传递“ javascript :;”。

它来自如下代码:

const Component = ({someAction}) => (
  <a href="javascript:void(0)" onClick={someAction}>click me</a>
);
Run Code Online (Sandbox Code Playgroud)

查看关于我应该为 HTML中的JavaScript链接使用哪个“ href”值的StackOverflow问题,似乎你们中的大多数人都同意这javascript:void(0)是最好的选择,在React 16.9.0中将不再可能。

仅替换为href="#"是有问题的,因为浏览器将滚动到页面顶部并更改显示的URL。尤其是如果您使用哈希链接进行路由,这将是一个很大的问题。

我可以更新整个代码库,使其包含e.preventDefault();在每个事件处理程序中,但这似乎很难做到,尤其是当事件处理程序是由Redux动作创建者或挂钩自动创建时。我不会在任何地方寻找答案“仅包括e.preventDefault();”!

另外,<button>我还必须使用一种方法来处理许多不必要的样式。

所以我想知道:是否有特定于React库的解决方案才能获得<a>可以触发动作而没有副作用的有效链接?我想尽可能少更改代码,并摆脱弃用警告。

javascript reactjs

5
推荐指数
2
解决办法
2222
查看次数

标签 统计

button ×1

css ×1

hyperlink ×1

javascript ×1

reactjs ×1