Estoy tratando de incrustar algunos formularios usando el casco de reacción.
Mi código se ve así:
<Helmet> <script type="text/javascript"> {var FORMID; (function(d, t) { var s = d.createElement(t), options = { 'userName':'USERNAME', 'formHash':'FORMID', 'autoResize':true, 'height':'751', 'async':true, 'host':'wufoo.com', 'header':'show', 'ssl':true }; s.src = ('https:' == d.location.protocol ?'https://':'http://') + 'secure.wufoo.com/scripts/embed/form.js'; s.onload = s.onreadystatechange = function() { var rs = this.readyState; if (rs) if (rs != 'complete') if (rs != 'loaded') return; try { FORMID = new WufooForm(); FORMID.initialize(options); FORMID.display(); } catch (e) { } }; var scr = d.getElementsByTagName(t)[0], par = scr.parentNode; par.insertBefore(s, scr); })(document, 'script');} </script> </Helmet>El script es una copia y pega del generador de formularios de wufoo. (Reemplacé el nombre de usuario y la identificación del formulario con FORMID y NOMBRE DE USUARIO en mayúsculas).
Sigo teniendo errores. En este momento, esto producirá un error de graphql (no hay graphql en la página)
There was a problem parsing "/../my-page"; any GraphQL fragments or queries in this file were not processed. This may indicate a syntax error in the code, or it may be a file type that Gatsby does not know how to parse. y un error de Module build failed .
En el código VS, recibo algunas advertencias sobre la expression expected de var. Y algunos otros lugares donde espera un { o un }. Estoy bastante seguro de que todos los corchetes coinciden. Nuevamente, es copiar y pegar de wufoo y esto funciona en html/js sin formato.
Envuelva su script con acentos graves ( ` ):
<Helmet> <script type="text/javascript"> {`var FORMID; (function(d, t) { var s = d.createElement(t), options = { 'userName':'USERNAME', 'formHash':'FORMID', 'autoResize':true, 'height':'751', 'async':true, 'host':'wufoo.com', 'header':'show', 'ssl':true }; s.src = ('https:' == d.location.protocol ?'https://':'http://') + 'secure.wufoo.com/scripts/embed/form.js'; s.onload = s.onreadystatechange = function() { var rs = this.readyState; if (rs) if (rs != 'complete') if (rs != 'loaded') return; try { FORMID = new WufooForm(); FORMID.initialize(options); FORMID.display(); } catch (e) { } }; var scr = d.getElementsByTagName(t)[0], par = scr.parentNode; par.insertBefore(s, scr); })(document, 'script');`} </script> </Helmet>