Как включить код отслеживания hotjar в директиву angular 1.x? - PullRequest
0 голосов
/ 15 октября 2019

Итак, у меня есть код отслеживания:

Я хочу использовать его в директиве

<script>
  (function(h,o,t,j,a,r){
          h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)};
          h._hjSettings={hjid:HOTJAR_ID,hjsv:6};
          a=o.getElementsByTagName('head')[0];
          r=o.createElement('script');r.async=1;
          r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv;
          a.appendChild(r);
      })(window,document,'https://static.hotjar.com/c/hotjar-','.js?sv=');
</script>

Я написал следующий код из ng-hotjar, но он некажется, что работает

angular
    .module('test').directive('hotjar', function (HOTJAR_ID) {
        return {
            restrict: 'E',
            scope: {
            },
            link: function (scope, element, attrs) {
                if (!window['_hjSettings']) {
                    window['_hjSettings'] = {
                        hjid: HOTJAR_ID,
                        hjsv: 6
                    }
                };

                var script = document.createElement('script');
                script.type = 'text/javascript';
                script.src = '//static.hotjar.com/c/hotjar-' + HOTJAR_ID + '.js?sv=' + 6;

                element.append(script);

            }
        };
    });

Я получаю сообщение об ошибке как hotjar.js: 122 Uncaught ReferenceError: hj не определено

...