在 VUE SPA 中添加 Facebook Pixel 特定页面
Add Facebook Pixel specific page in VUE SPA
我在 vue 中为 SPA 应用程序添加特定的 facebook 像素时遇到问题
<script>
!(function(f, b, e, v, n, t, s) {
if (f.fbq) return;
n = f.fbq = function() {
n.callMethod
? n.callMethod.apply(n, arguments)
: n.queue.push(arguments);
};
if (!f._fbq) f._fbq = n;
n.push = n;
n.loaded = !0;
n.version = '2.0';
n.queue = [];
t = b.createElement(e);
t.async = !0;
t.src = v;
s = b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(t, s);
})(
window,
document,
'script',
'https://connect.facebook.net/en_US/fbevents.js'
);
fbq('init', 'test');
fbq('track', 'PageView');
fbq('track', 'CompleteRegistration');
</script>
<noscript>
<img
height="1"
width="1"
src="https://www.facebook.com/tr?id=1234456789&ev=PageView
&noscript=1"
/>
</noscript>
<!-- End Facebook Pixel Code -->
我想将此添加到我的页面domainname/register
如何在单页应用程序VUE中为特定页面添加脚本头和不添加脚本头
您可以根据当前路由名称渲染此脚本。
首先,它必须位于已安装的 Vue 应用程序内(在 <router-view/>
内),例如:在布局组件内(如果有的话)。
重要提示,直接在 Vue 应用程序中添加脚本可能会导致问题。
因此,最好将脚本移动到资产文件夹中的 js 文件,例如:
/js/fbq.js
.
之后检查当前路由以像这样渲染它:
<!-- Render based on route -->
<component v-if="$route.name == 'register'" :is="`script`" src="/js/fbq.js" async></component>
第 1 步: 在 <head>
标签内的 public/index.html
添加 facebook pixel code
<!-- Facebook Pixel Code -->
<script>
!function(f,b,e,v,n,t,s)
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(t,s)}(window, document,'script',
'https://connect.facebook.net/en_US/fbevents.js');
fbq('init', '266xxxxxxxx1');
fbq('track', 'PageView');
</script>
<noscript><img height="1" width="1" style="display:none"
src="https://www.facebook.com/tr?id=266xxxxxxxx1&ev=PageView&noscript=1"/>
</noscript>
<!-- End Facebook Pixel Code -->
第 2 步: 在你的组件中 computed, methods, created
你可以做,
里面methods
你可以做到,
methods: {
addtoCart() {
window.fbq('track', 'Add to your shopping cart')
}
}
在computed
里面你可以这样做
computed: {
formattedRating () {
window.fbq('track', 'Format your rating')
return this.fixedPoints === null
? this.currentRating
: this.currentRating.toFixed(this.fixedPoints)
},
}
里面 created
你可以这样做,
created() {
this.loadPressRelease()
window.fbq('track', 'Load press release')
},
您可以在任何组件中使用 window.faq
调用 facebook pixel
事件 faq
函数
我在 vue 中为 SPA 应用程序添加特定的 facebook 像素时遇到问题
<script>
!(function(f, b, e, v, n, t, s) {
if (f.fbq) return;
n = f.fbq = function() {
n.callMethod
? n.callMethod.apply(n, arguments)
: n.queue.push(arguments);
};
if (!f._fbq) f._fbq = n;
n.push = n;
n.loaded = !0;
n.version = '2.0';
n.queue = [];
t = b.createElement(e);
t.async = !0;
t.src = v;
s = b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(t, s);
})(
window,
document,
'script',
'https://connect.facebook.net/en_US/fbevents.js'
);
fbq('init', 'test');
fbq('track', 'PageView');
fbq('track', 'CompleteRegistration');
</script>
<noscript>
<img
height="1"
width="1"
src="https://www.facebook.com/tr?id=1234456789&ev=PageView
&noscript=1"
/>
</noscript>
<!-- End Facebook Pixel Code -->
我想将此添加到我的页面domainname/register
如何在单页应用程序VUE中为特定页面添加脚本头和不添加脚本头
您可以根据当前路由名称渲染此脚本。
首先,它必须位于已安装的 Vue 应用程序内(在 <router-view/>
内),例如:在布局组件内(如果有的话)。
重要提示,直接在 Vue 应用程序中添加脚本可能会导致问题。
因此,最好将脚本移动到资产文件夹中的 js 文件,例如:
/js/fbq.js
.
之后检查当前路由以像这样渲染它:
<!-- Render based on route -->
<component v-if="$route.name == 'register'" :is="`script`" src="/js/fbq.js" async></component>
第 1 步: 在 <head>
标签内的 public/index.html
添加 facebook pixel code
<!-- Facebook Pixel Code -->
<script>
!function(f,b,e,v,n,t,s)
{if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};
if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(t,s)}(window, document,'script',
'https://connect.facebook.net/en_US/fbevents.js');
fbq('init', '266xxxxxxxx1');
fbq('track', 'PageView');
</script>
<noscript><img height="1" width="1" style="display:none"
src="https://www.facebook.com/tr?id=266xxxxxxxx1&ev=PageView&noscript=1"/>
</noscript>
<!-- End Facebook Pixel Code -->
第 2 步: 在你的组件中 computed, methods, created
你可以做,
里面methods
你可以做到,
methods: {
addtoCart() {
window.fbq('track', 'Add to your shopping cart')
}
}
在computed
里面你可以这样做
computed: {
formattedRating () {
window.fbq('track', 'Format your rating')
return this.fixedPoints === null
? this.currentRating
: this.currentRating.toFixed(this.fixedPoints)
},
}
里面 created
你可以这样做,
created() {
this.loadPressRelease()
window.fbq('track', 'Load press release')
},
您可以在任何组件中使用 window.faq
调用 facebook pixel
事件 faq
函数