好的。所以我有这样的东西。
我在整个帖子周围添加了链接,以为我可以停止单个按钮的冒泡,但 stopPropagation(( 没有按预期工作。
我已经将按钮操作拆分为一个单独的组件,这是关于该主题的另一篇文章建议的,但这并没有解决问题。我假设这与它是一个反应路由器-dom 链接的事实有关,但它可能是其他东西。
有什么想法吗?
import React from 'react';
import { Link } from 'react-router-dom';
const MyComponent = ({
doSomething
})=>(
<Link to={`/some/url`}>
<div className="post">
<span className="button" onClick={e=>{
e.stopPropagation();
doSomething();
}}>My Button</span>
</div>
</Link>
)
应该可以工作:
e.preventDefault()
更详细的说明:stopPropagation/prevent链接内元素的默认行为
此外,stopPropagation
是一个函数,它正在等待被调用。