1

私はバックエンド開発者で、javascript MVC フロントエンドの素晴らしい新しい世界に頭を悩ませようとしています。私は単純な Ember-cli アプリケーション (現時点では v1.12) を構築しており、ember-cli-mixpanelアドオン (v0.0.3) を介して mixpanel を統合しようとしています。

経由でインストールしたので、ディレクトリember install ember-cli-mixpanelに取得し、 .node_modulespackages.json

ドキュメントは初心者には少しまばらですが、私はこれを読みました:

Router にラッパーを含める手動の手順が 1 つあります。ルーターを tracking_mixin.js で拡張するだけです。

つまり、アプリの に次の行が必要ですrouter.js

import TrackingMixin from './mixin/tracking_mixin';

ただし、アプリがロードされると、これがコンソールにスローされます。

キャッチされていない TypeError: this.trackRouteChange は関数ではありません

trackRouteChangeミックスインから呼び出されるストックページビューイベントトラッカーなので、適切にロードされていることを意味すると思います...しかし、それについてはわかりません。

私はenvironment.jsそこにある mixpanel 設定のもので適切に設定しています:

ミックスパネル: {

有効: 真、

LOG_EVENT_TRACKING: 真、

トークン: 'supersecrettokenhere',

disable_auto_tracking: false

}、

どんな洞察も大歓迎です。単純なことだと思いますが、しばらくこれを叩いた後、私はちょうどブロックを打っていると思います。

4

1 に答える 1

1

mixin をインポートしましたが、mixin の関数とプロパティをルーター オブジェクトに含めるには、それをルーターに渡す必要があります。次に示すように、ミックスインを渡すことができます。

import TrackingMixin from './mixin/tracking_mixin';

var Router = Ember.Router.extend(TrackingMixin, {
  // TrackingMixin's functions and properties will now be mixed in to Router.
});
于 2015-08-12T07:53:13.017 に答える