Ант*_*вко 8 google-tag-manager vue.js nuxt.js
我在添加到 dayaLayer 时遇到问题。对于 gtm,我使用这个插件,但我不\xe2\x80\x99不明白如何通过组件为其添加 dataLayer。\n我的 nuxt.config fo 插件
\n\nmodules: [\n [\'@nuxtjs/google-tag-manager\', {\n id: \'GTM-xxxxxxxxxx\',\n pageViewEventName: \'nuxtRoute\',\n pageTracking: true,\n layer: \'dataLayer\'\n }]\n ]\nRun Code Online (Sandbox Code Playgroud)\n\n我的组件
\n\nhead() {\n return {\n title: this.seo.title_meta,\n meta: [\n // hid is used as unique identifier. Do not use `vmid` for it as it will not work\n { hid: \'google-site-verification\', name: \'google-site-verification\', content: \'test\' },\n { hid: \'description\', name: \'description\', content: this.seo.description_meta }\n ],\n __dangerouslyDisableSanitizers: [\'script\'],\n script: [\n {\n innerHTML: JSON.stringify({\n \'@context\': \'http://schema.org\',\n \'@type\': \'Organization\',\n name: \'test\',\n url: \'https://test.co\',\n sameAs: this.linkMeta,\n description: `${this.seo.description_meta}`\n }),\n type: \'application/ld+json\'\n },\n {\n innerHTML: `\n window.dataLayer = window.dataLayer || [];\n window.dataLayer = [{ \'pageType\': \'Main\'}]\n `\n }\n ]\n };\n },\nRun Code Online (Sandbox Code Playgroud)\n\n我尝试将带有 dataLayer 的脚本添加到头部,但没有任何结果。我的 Google Tag Assistant 插件找不到 dataLayer。谢谢你的帮助!
\nBar*_*art 10
在 nuxt.config.js 中,您需要将其添加到head对象中:
script: [
{
hid: 'gtm',
innerHTML: `window.dataLayer = window.dataLayer || [];`,
type: 'text/javascript'
}
]
Run Code Online (Sandbox Code Playgroud)
在你的 nuxt 页面中,你可以使用安装的钩子将数据推送到 dataLayer,如下所示:
mounted: {
window.dataLayer.push({variable: value, someOtherVar: anotherValue})
}
Run Code Online (Sandbox Code Playgroud)
使用已安装的钩子非常重要,因为这个钩子称为 wenn asycData() 或 fetch() 已完成并且应用程序已完成水合,因此窗口可用。
| 归档时间: |
|
| 查看次数: |
6431 次 |
| 最近记录: |