programing

NuxtJs에서 Facebook 픽셀을 Import하는 방법

sourcetip 2022. 7. 16. 08:51
반응형

NuxtJs에서 Facebook 픽셀을 Import하는 방법

NuxtJs에서 Facebook Pixel 코드를 Import해야 합니다.

facebook에서 제공하는 콘텐츠를 사용하여 정적 저장소 pixel.js에 파일을 만들 수 있습니다.

!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', 'XXYOUR CODEXX')
    fbq('track', 'PageView')

(Nuxt에서는 javascrip 기반의 noscript 태그를 사용하지 않습니다.)

그런 다음 nuxt.conf.js 파일에 행을 추가합니다.

script:[      
            {src:'pixel.js', type: 'text/javascript'}
        ]

플러그인으로 Import할 수도 있습니다.

./plugins/sublic-sublic.blicts.

    /* eslint-disable */
    export default ({ app, store }) => {
      /*
       ** Only run on client-side and only in production mode
       */
      // if (process.env.NODE_ENV !== "production") return
      /*
       ** Initialize Facebook Pixel Script
       */
      if (process.browser) {
        !(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', 'XXXXXXXXX-XXXXX')
          app.router.afterEach((to, from) => {
            /*
            ** Fire a page view on each route change
            */
           console.log("fire pageview", store.state)
           fbq("track", "PageView")
          })
        }
    }

nuxt.config.js의 플러그인 세션에서 Import합니다.

  plugins: [
    { src: '~/plugins/facebook-events.js' }
   ]

를 삭제해 보겠습니다.<noscript>태그를 붙입니다.

디버깅에 대해서는 https://stackoverflow.com/a/49202327/1483977 를 참조해 주세요.또한 버그에 대해서는 https://github.com/vuejs/vue/issues/9724 를 참조해 주세요.

i를 sr:false로 사용할 수 있습니다.

plugins : [
    // ssr: false to only include it on client-side
    { src : '~/plugins/vue-notifications', ssr : false },
    { src : '~/plugins/vue-slider-component', ssr : false },
    { src : '~/plugins/network', ssr : false },
    { src : '~/plugins/web3js', ssr : false },
    // {src: '~/plugins/irisws', ssr: false},
    // { src : '~/plugins/iomqtt', ssr : false }
],

언급URL : https://stackoverflow.com/questions/43653545/how-to-import-facebook-pixel-on-nuxtjs

반응형