javascript - 导入和导出外部 javascript 代码
问题描述
我想<script>
在我的反应应用程序中动态创建带有跟踪代码的标签。(当用户单击接受以启用跟踪时)
我试着用这样的东西
import analyseScripts from './analyseScripts';
loadAnalyseScripts() {
console.log('load analyse scripts');
const script = document.createElement('script');
script.src = analyseScripts();
script.async = true;
document.body.appendChild(script);
}
并通过以下方式导出:
export default function marketingScripts() {
return (
(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-5CQF85S');
)
}
但是当然导出是错误的。如何实现这样的结果?
<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-5CQF85S');
</script>
解决方案
推荐阅读
- azure - 经典模式下的条件变量
- python - 在 Python 中将 EXE 文件编码/解码为 base64
- javascript - rete.js 示例页面不起作用我该怎么办?
- python - python设置字典值的更好方法
- .htaccess - 如何将所有非 www 流量重定向到 digitalocean 中的 www
- ios - 如何在 iOS 中强制屏幕旋转为纵向但不倒置?
- python - 将 Excel 导入 Google Colab:“TypeError:预期的 str、字节或 os.PathLike 对象,而不是 NoneType”
- php - 当页面仍在工作时,如何刷新()或 ob_flush()响应标头?
- ssl - WHM - 自动将通配符 SSL 安装到所有子域
- android - 我正在尝试在 termux 中安装 TELEBOT nodejs 模块,但我收到错误,操作被我的操作系统拒绝