2016-01-14 3 views
-1

Я использую пакет НПМ для серверного сегмента стороне с МетеораSegment.io NPM пакет не работает с Метеор

В моей папке packages.json У меня есть

"segmentio": "0.1.4" 


if Meteor.isServer 
    Meteor.startup -> 
    @analytics = Meteor.npmRequire('segmentio') 
    analytics.init(Meteor.settings.segmentio) 

    analytics.track 
     event: 'hello' 
     userId: '2' 

Это код, я использую для отслеживать событие со стороны сегмента сервера. Но событие не появляется в отладчике. Любой совет? Что я делаю не так?

Я знаю, что использую правильный ключ Meteor.settings.segmentio, потому что я использую тот же ключ на клиенте, и эти события отслеживаются просто отлично. Но на сервере событие «hello», которое я написал выше, не будет отслеживать. При запуске кода не возникает ошибок.

+0

Если ошибки не выдаются, я бы дважды проверил значение «Meteor.settings.segmentio». Может быть, он не читается правильно или вы скопировали неправильное значение. –

+0

Я использую 'Meteor.settings.segmentio' на клиенте с analytics.js, и он работает. Поэтому я знаю, что ключ правильный. Все клиентские вызовы проходят. Код выше - это то, что я использую для серверной части. Ошибок не возникает. Но я не вижу события в отладчике. – nearpoint

ответ

-1

У меня была неправильная настройка кода.

Предметный указатель. Вот рабочий код:

@analytics = null 

if Meteor.isServer 
    Meteor.startup -> 
    analytics = Meteor.npmRequire('segmentio') 
    analytics.init(Meteor.settings.segmentio) 

    analytics.track 
     event: 'hello' 
     userId: '2' 
+0

Это не javascript. Это действительно должно быть требование не использовать shitty "2cool4school" синтаксис, как CoffeeScript и другие глупые ерунды при предоставлении ответов. – Yeats