2017-06-15 29 views
0

我正在使用同构React应用程序来呈现页面。我必须添加GTM脚本到页面,当我添加到Java脚本文件,巴贝尔由于报价和其他事情失败,我可以知道我可以逃脱或确保巴贝尔跳过这一点。它未能在redertoString功能添加GTM脚本来响应组件RendertoString

<!-- Google Tag Manager --> 
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 
})(window,document,'script','dataLayer','GTM-XXXX');</script> 
<!-- End Google Tag Manager --> 

回答

1

你可以通过使用作出反应的dangerouslySetInnerHTML

这样

<script 
    type="text/javascript" 
    dangerouslySetInnerHTML={{ 
    __html: `(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 
     new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 
     j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 
     'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 
     })(window,document,'script','dataLayer','GTM-XXXX');` 
    }} 
/> 
+0

让我给它一个尝试 – kobe

+0

看起来像它的工作。 – kobe

+0

alhamdulellah:P – Faris