【问题标题】:ReactJS - call function from broswerReact JS - 从浏览器调用函数
【发布时间】:2021-12-28 14:11:44
【问题描述】:

我开始使用 React,只是将旧的 Web 应用程序转换为 ReactJS。

我的问题是我加载了一些内容,这些内容后来被添加到模式中(dangerouslySetInnerHTML)。内容包括<input type="button" onclick="myFunc()">

以前我可以只写一个全局函数 myFunc() 并执行它。但是对于 ReactJS,我不知道该怎么做。如果我只是将此函数写入组件中,我会得到myFunc is not defined

有人知道如何解决它吗?

在此先感谢

【问题讨论】:

  • 当然这不是使用 react 的最佳方式,但如果你绝对需要它,你应该致电 window.myFunc()
  • 我想说解决它的最好方法是不要使用dangerouslySetInnerHTML 并在 React 中渲染这部分。

标签: javascript reactjs function button onclick


【解决方案1】:

我建议使用某种状态管理工具,例如 Context 或 Redux。这样你就可以设置一个全局函数,可以在应用程序的任何地方执行。

【讨论】:

    【解决方案2】:

    你可以在 react 中编写全局函数。在类中的某个地方,可能在构造函数中或者在componentDidMount 中,写window.myFunc = this.myFunc.bind(this);

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-01
      • 1970-01-01
      • 2018-07-05
      • 2014-05-12
      相关资源
      最近更新 更多