javascript - 如何重新触发使用 Preventdefault() 取消的 js 事件

标签 javascript reactjs dom-events

具有以下React代码:

// foo element
<NavLink onClick={(e) => this.sectionSelected(e)} />

//method invoqued
sectionSelected(e) {
    e.preventDefault();

    // foo actions   
    // this.setState( ... )

    // trigger the click again
    // e.retrigger() 
}

如何重新触发使用 preventDefault 取消的点击?

寻找不涉及jquery的答案。

最佳答案

我认为没有办法按照您想要的方式暂停默认事件行为。

您可以包装 NavLink 来处理点击并遵循默认行为...

const NavLinkWithOnClick = ({
 clickHandler,
 to
}) => (
  <div onClick={clickHandler}>
   <NavLink to={to} />
  </div>
)

...

<NavLinkWithOnClick clickHandler={sectionSelected] to="/wherever" />

关于javascript - 如何重新触发使用 Preventdefault() 取消的 js 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46972347/

相关文章:

javascript - 在 Javascript 中声明和填充多维数组的有效方法

javascript - Jquery,ajax 按钮不工作

javascript - 迭代 div 以获取不同的输入字段并将其发布到 Controller

reactjs - 使用 CSP : Refused to execute inline script react CRA

javascript - 使用外部js文件引用td标签

javascript - ArcGIS JavaScript API 3.9 - 鼠标拖动事件在 Internet Explorer 11 中不起作用

javascript - 我需要使用 JS 创建促销代码验证

javascript - 如何通过 URL 从 Axios.get() 渲染图像

javascript - 表格标题未占据页面的整个宽度

javascript - 为什么 hashchange 事件不会在 www.google.com 上触发?