Reactjs 动态表单仅在刷新时显示

Reactjs 动态表单仅在刷新时显示,reactjs,marketo,Reactjs,Marketo,我遇到了一个问题,客户向我提供了一个第三方Marketo表单,将其包含在我正在构建的其中一个页面上,该表单在本地测试时在“正常”html页面上工作,但是在盖茨比上,它不起作用。提供的脚本如下所示: <script src="//app-xxxx.marketo.com/js/forms2/js/forms2.min.js"></script> <form id="mktoForm_xxxx"></form>

我遇到了一个问题,客户向我提供了一个第三方Marketo表单,将其包含在我正在构建的其中一个页面上,该表单在本地测试时在“正常”html页面上工作,但是在盖茨比上,它不起作用。提供的脚本如下所示:

<script src="//app-xxxx.marketo.com/js/forms2/js/forms2.min.js"></script>
<form id="mktoForm_xxxx"></form>
<script>MktoForms2.loadForm("//app-xxxx.marketo.com", "xxx-xxx-xxx", xxxx);</script>
然后,在我想要表单的页面上,我添加了以下内容:

<form id="mktoForm_xxxx"></form>

该表单仅在我在页面上并手动刷新浏览器时显示。从任何其他页面单击页面都不会呈现表单。我猜这就是盖茨比/盖茨比如何用表格来浏览网页


有人能帮忙吗???

当具有该表单的组件装载时,您可能需要调用该.loadForm函数

React.useEffect(() => {
// load form here...
}, []

如果它只是在site.js中被调用,那么它很可能是在表单元素出现在DOM中之前被调用的,因此它没有任何附加内容


我不久前创建了这个示例,并将其保留在这里,以防有额外的帮助:

对于任何有相同问题的人,我在这里找到了解决方案:
<form id="mktoForm_xxxx"></form>
React.useEffect(() => {
// load form here...
}, []