設定

jetpack.storage.settings 名前空間を使用すると、ユーザが変更可能な設定を指定することが出来ます。Jetpack は指定に基づいて自動的にユーザーインタフェイスを生成します。設定はブラウザのセッションを跨いで維持され、simple storage API を利用して保存されます。設定は jetpack ごとに保持され、他の jetpack からアクセスすることは出来ません。

現在のところ開発段階にあるため、このAPIは future に存在し、使用する前にインポートする必要があります:

jetpack.future.import("storage.settings");

マニュフェストで設定を指定する

設定を指定するには、settings APIをインポートするより前にmanifest という名前の変数をグローバル名前空間に定義します。この変数の値は settings という名前のプロパティを含む object でなければなりません。settings プロパティの値はユーザが利用する設定を表すオブジェクトの配列です。ユーザーが設定をカスタマイズできるように、Jetpackはこの指定から自動的にユーザーインターフェースを生成します。ユーザは about:jetpack ページの "Installed Features" タブ内にある "settings" ボタンからこのインターフェースを開くことができます。

manifest 定義の例です:

var manifest = {
  settings: [
    {
      name: "twitter",
      type: "group",
      label: "Twitter",
      settings: [
        { name: "username", type: "text", label: "Username" },
        { name: "password", type: "password", label: "Password" }
      ]
    },
    {
      name: "facebook",
      type: "group",
      label: "Facebook",
      settings: [
        { name: "username", type: "text", label: "Username", default: "jdoe" },
        { name: "password", type: "password", label: "Secret" }
      ]
    },
    { name: "music", type: "boolean", label: "Music", default: true },
    { name: "volume", type: "range", label: "Volume", min: 0, max: 10, default: 5 }
  ]
};

// Import after defining manifest!
jetpack.future.import("storage.settings");

この定義により各設定が入力フィールドをもつユーザーインターフェースが生成されます。

上記のマニフェストにより、以下の値が記録されたプロパティがjetpackのコード内で利用可能になります:

  • jetpack.storage.settings.twitter.username
  • jetpack.storage.settings.twitter.password
  • jetpack.storage.settings.facebook.username
  • jetpack.storage.settings.facebook.password
  • jetpack.storage.settings.music
  • jetpack.storage.settings.volume

See also

ドキュメントのタグと貢献者

 このページの貢献者: teoli, yiwasaki
 最終更新者: teoli,