コンテンツにスキップ

一歩進んだ使い方

独自のイベントを送信する

ボタンを押したタイミングなどでアプリケーション独自のイベントを送信することができます。

emitメソッドを使って、イベントを送信します。

// 通常、load イベント発生後に処理をしないと、fanship 変数が初期化されていません。
window.addEventListener('load', function() {
    // イベント名のみ送信する場合
    fanship.events.emit('shop.addCart');

    // プロパティやコールバック関数の組込例
    fanship.events.emit('shop.addCart', {
        itemId: '100',
    }, function (err) {
       if (err !== null) {
          console.log(err);
       }
    });
});

イベント名、プロパティ、コールバック関数を指定できます。

  • 第一引数にイベント名をstring型で指定します。
    • この項目は必須です。
    • イベント名は、英数字([a-zA-Z0-9])、アンダースコア(_)、ピリオド(.)、ハイフン(-)のみ使用できます。
    • イベント名の先頭にアンダースコア(_)は使用できません。
    • イベント名について、Android、iOSそれぞれで異なる文字制限はありません。
  • 第二引数にプロパティをオブジェクトの形式で指定できます。
    • この項目は必須ではありません。
    • キーと値はそれぞれstring型で指定する必要があります。
    • キーの文字数は0文字以上10,000文字未満、値の文字数は10,000文字未満である必要があります。
    • キーと値について、Android、iOSそれぞれで異なる文字制限はありません。
  • 第三引数にコールバック関数を指定できます。
    • この項目は必須ではありません。
    • コールバック関数の第一引数にはエラーが入ります。
      • 送信成功した場合には、nullが入ります。

Warning

例に示すように、コンテンツの読み込みの完了後にイベント送信が行われるよう、組み込みの際にはご注意ください。
コンテンツの読み込みが完了する前にURLの書き換え(window.location.replaceなど)を行うと、 loadイベントが発生せずイベントトラッキングが正常に動作しない可能性があります。