在React中调用外部JS

时间:2017-09-20 23:33:29

标签: javascript reactjs

我有一个JS功能,我需要在我的React App中运行。

该函数将一个mousemove事件监听器添加到' body'然后将鼠标按下和鼠标按下事件发送到'窗口'最后,我们改变了依赖于eventListeners的元素的样式。

我真的不知道这个功能会去哪里,或者它将被导入和使用的位置?

从我的研究中得出了两件事:

"因此要么在全局范围(aka窗口)上定义方法。然后你可以从任何方法使用它,无论是否是React。"

你究竟会这样做。那会是某种' bundle.js'哪个包含在index.html文件中?我已经设置了webpack.config,为我的反应组件创建了一个bundle.js。

"或者您可以切换到基于模块的范例,并使用require / import来获取模块并使用该功能。"

好的,但是有问题的javascript函数跨越几个不同的组件?也许我可以在" body"上听老鼠移动事件。但是我如何在另一个组件中动态设计另一个元素?

非常感谢您的帮助?

1 个答案:

答案 0 :(得分:1)

首先,我认为如果您要添加外部库来操作dom,则会因为reactjs使用虚拟dom而遇到问题。这取决于功能的实现方式。

但是,如果该函数实现得很好,您可以将它作为脚本添加到public / index.html中,然后您可以从window.yourFunctionOrWhatEver中使用它,也可以作为函数调用。

但是,如果我是你,我会使用reactjs事件实现我自己的功能。这里列出了它们:

onClick onContextMenu onDoubleClick onDrag onDragEnd onDragEnter onDragExit onDragLeave onDragOver onDragStart onDrop onMouseDown onMouseEnter onMouseLeave onMouseMove onMouseOut onMouseOver onMouseUp

再见!

相关问题