Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/377.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.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/Preact应用程序中运行常规JavaScript_Javascript_Reactjs_Preact - Fatal编程技术网

如何在React/Preact应用程序中运行常规JavaScript

如何在React/Preact应用程序中运行常规JavaScript,javascript,reactjs,preact,Javascript,Reactjs,Preact,我试着在一个Preact应用程序中使用砖石,试着使用react/compat,但都失败了 这就是我尝试的方式: const App = () => ( <Landing name="shoecare"> <!-- all the working code --> <!-- here --> <script src="https://unpkg.com/masonry-layout@4.2.

我试着在一个Preact应用程序中使用砖石,试着使用react/compat,但都失败了

这就是我尝试的方式:

const App = () => (
  <Landing name="shoecare">
    <!-- all the working code -->

    <!-- here -->
    <script src="https://unpkg.com/masonry-layout@4.2.2/dist/masonry.pkgd.min.js"></script>
    <script>
    var grid = document.querySelector(".how__list");
    new Masonry(grid, {
      itemSelector: ".how__item",
      columnWidth: document.querySelctor('body').clientWidth / 2 - 16,
    });
    </script>
    <!-- end -->
  </Landing>
);

clab(<App />);
const-App=()=>(
var grid=document.querySelector(“.how__列表”);
新砌体(格栅、{
项目选择器:“.how\u项目”,
columnWidth:document.querySelctor('body').clientWidth/2-16,
});
);
克拉布(

可能吗

我设法运行了一些常规的jsonclick,就像这样

<span class="services__nav-previous" onClick={(e) => scrollLeft()}>
scrollLeft()}>

我猜您使用的是功能组件,所以要在其中包含任何js代码,您应该这样做

const App = () => {
  // your js code here
  return (
  // here you put your components
  )
}

编辑:你不把放在你的功能组件中,你把它们添加到index.html文件中,而不是app.js中。我面临的问题是我在Preact方面没有经验(我没有开发这个应用),但是如果我尝试你建议的高亮崩溃:有什么想法吗?检查你的括号,在const app=()=>应该是{}not(),你可以尝试教程来了解它是如何工作的。对不起,你是对的。但是问题仍然存在,我希望我有时间来解决。正如我提到的,我已经很晚了。将返回括号改为()not{},my Fault您可能会发现这很有用。您可以使用
ref
获取react呈现的DOM元素的句柄,然后可以运行
useffect
来设置非react组件: