如何将标签管理器添加到标题 vue.js

how to add tag manager to head in vue.js

我的 vue.js 项目有问题。我有一个函数,我必须将其添加到我的项目中。当我在 index.html 中添加时,我的函数(它是在 head 项目中创建 tagManager 的函数)不起作用 属性。所以我尝试在mounted()中添加App.vue(vue组件中的主文件)。但是我仍然有一个问题如何将它添加到模板中。我的函数是:

 <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;
    f.parentNode.insertBefore(j, f);
  })(window, document, "script", "dataLayer");
  </script>

我想我会把这个脚本设置为挂载然后执行 document.head.appendChild。但是功能太复杂了,所以我有一个问题。知道如何将此脚本添加到我的项目头部吗?

将此脚本放在一个js文件中,不带<script>标签。例如,您可以将其命名为 gtm.js

然后从 vue.js 项目的 main.js 导入文件:

import './gtm.js'