Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
调用react组件&x27;来自外部JavaScript函数的s函数_Javascript_Reactjs - Fatal编程技术网

调用react组件&x27;来自外部JavaScript函数的s函数

调用react组件&x27;来自外部JavaScript函数的s函数,javascript,reactjs,Javascript,Reactjs,我正在尝试从javascript函数调用react组件的函数。在初始阶段,我想调用在react组件中声明的函数,但我需要从javascript函数调用它,而不是从react调用 我知道如何从react函数调用javascript函数。如下 Javascript <script type="text/javascript"> function test(){ alert('Function from index.html'); } </script> co

我正在尝试从javascript函数调用react组件的函数。在初始阶段,我想调用在react组件中声明的函数,但我需要从javascript函数调用它,而不是从react调用

我知道如何从react函数调用javascript函数。如下

Javascript

<script type="text/javascript">
  function test(){
    alert('Function from index.html');
  }
</script>
componentWillMount() {
  window.test();
}
但在我的例子中,我想要一个完全相反的过程,由于某些插件初始化,需要从javascript调用react函数


我浏览了其他相关的话题,但没有得到确切的答案。那么我应该怎么做呢?

您可以将一个函数作为函数分配给
窗口
对象,并从脚本中调用该函数。因此,基本上您将执行以下操作:

componentWillMount() {
  window.reactFunction = () => {
    console.log('Test');
  }
}
然后从脚本中调用它,如下所示:

<script type="text/javascript">
  function test(){
    window.reactFunction()
  }
</script>

功能测试(){
window.reactFunction()
}

诚然,我不知道您计划如何使用它,但这可能是通过利用全局
窗口
对象来实现所需的一种方法。第二部分实际上需要某种方法来确定react组件是否已装入(在一个非平凡的示例中),或者在调用它之前检查方法是否存在。

window.fn=function(){}in react,然后在js中调用它如果存在谢谢你的回复让我试试。事实上,我有HTML5音频控制的功能和自定义操作,所以react不支持或处理事件,所以我必须使用javascript代码来处理事件,所以我需要调用javascript来响应函数和响应javascript函数。Visa A……@ AkkyKaNoJa,以防我的答案完全不包括你所需要的,考虑更新你的原始帖子,更多的细节,关于你确切的使用CaseNo需要去指导我定制的确切需求,我已经解决了所有的事情,我只想从JavaScript函数中调用反作用组件的功能。因此,我认为这篇文章分享的信息可能是可行的。