$routeProvider

概要

routeの設定に使用されます。 デモは、$routeを確認してください。

ngRouteモジュールのインストールが必要になります。

otherwise(params)

戻り値:Object

他に一致するroute定義がない場合に、route変更に使用されるroute定義を設定します。

引数 説明
params

型:Object

$route.currentが割り当てられたマッピング情報を指定します。

when(path, route)

戻り値:Object

$routeサービスへ新しいroute定義を追加します。

引数 説明
path

型:string

routeパス($location.pathに対して一致する)を指定します。 もし、$location.pathが冗長なトレイリングスラッシュ(trailing slash - URLの終わりのスラッシュ)を含むか、またはそれが無い場合、 $location.pathはトレイリングスラッシュを追加または削除し、routeの実際の定義にマッチさせます。(翻訳に自信なし)

  • パスはコロン(:name)から始まる命名グループを含めることが出来ます。 routeにマッチした場合、次のスラッシュまでの全ての文字が、 マッチした名前として$routeParamsに格納されます。
  • パスはコロンから始まりアスタリスクで終わる(:name*)命名グループを含めることが出来ます。 routeにマッチした場合、指定箇所に出来うる限りの全ての任意の文字が、 マッチした名前として$routeParamsに格納されます。
  • パスはクエッションマーク付き(:name?)の任意の命名グループを含めることが出来ます。

例えば、/color/:color/largecode/:largecode*\/editのようなrouteは、 /color/brown/largecode/code/with/slashs/editにマッチし、情報を抜き出します。

  • color : brown
  • largecode : code/with/slashs
route

型:Object

$route.currentに割り当てられるマッピング情報です。(翻訳に自信なし)

オブジェクトのプロパティ:

controller – {(string|function()=}
関数で指定する場合、そのコントローラー関数は新しく作られるスコープに関連付けられるべきです。 文字列を指定する場合は、登録されているコントローラの名前を指定します。
controllerAs – {string=}
コントローラーのエイリアス名を指定します。 もし、指定されるとコントローラーはcontrollerAsの名前でスコープ上に公開されます。
template – {string=|function()=}

文字列としてのHTMLテンプレート、またはHTMLテンプレートの文字列を返す関数を指定します。 これには、ngViewまたはngIncludeのディレクティブが使用されるべきです。 このプロパティは、templateUrlよりも優先されます。

もし、templateが関数の場合、下記の引数付きで呼びだされます。

  • {Array.<Object>} - 適用されたrouteによって、現在の$location.path()から抜き出されたrouteパラメータです。
templateUrl – {string=|function()=}

ngViewによって使用されるべきHTMLテンプレートへのパスの文字列、またはパスを返す関数を指定します。

もし、templateUrlが関数であれば、下記の引数付きで呼び出されます。

  • {Array.<Object>} - 適用されたrouteによって、現在の$location.path()から抜き出されたrouteパラメータです。
resolve - {Object.<string, function>=}
コントローラーに注入されるべき任意の依存関係のマップを指定します。 もし、これらの依存関係のいずれかがpromiseされた場合、 routeは全てがresolveされるか、コントローラーがインスタンス化される前に1つでもrejectされるまで待機します。 もし、全てのpromiseが成功としてresolveされた場合、 resolveされたpromiseの値が注入され、$routeChangeSuccessイベントが発火されます。 もし、いずれかのpromiseがrejectされた場合、$routeChangeErrorイベントが発火されます。 マップのオブジェクトの詳細は下記の通りです。
key – {string}
コントローラーに注入される依存関係の名前です。
factory - {string|function}
文字列が指定された場合、それはサービスへのエイリアスになります。 もし、関数が指定された場合はそれが注入され、戻り値は依存関係として扱われます。 もしその結果がpromiseであれば、その値がコントローラーに注入される前にresolveされます。 ngRoute.$routeParamsは、これらのresolve関数内で未だ前のrouteを参照することに注意してください。 代わりに、$route.current.paramsを使用して、新しいroouteのパラメータにアクセスしてください。
redirectTo – {(string|function())=}

$locatonのパスを更新し、routeのリダイレクトをトリガします。

もし、redirectToが関数であれば、下記の引数付きで呼び出されます。

{Object.<string>}
現在のrouteのtemplateUrlが適用されることによって、 現在の$location.path()から抜き取られたrouteパラメータです。
{string}
現在の$location.path()です。
{Object}
現在の$location.search()です。

カスタマイズされたredirectTo関数は、 $location.path()と$location.search()の更新に使用される文字列が返ることを期待します。

[reloadOnSearch=true] - {boolean=}

$location.search()、または$location.hash()の変更時のみ、再読み込みされるrouteを指定します。

もし、falseが設定され、ブラウザのURLが変更されると、 $routeUpdateイベントがrootスコープ上でブロードキャストされます。

[caseInsensitiveMatch=false] - {boolean=}

大文字・小文字を区別せずに、routeにマッチさせます。

もし、trueが設定されると独自のrouteを、大文字・小文字を区別せずに、routeにマッチさせます。

 Back to top

© 2017 Google
Licensed under the Creative Commons Attribution License 3.0.

このページは、ページトップのリンク先のAngularJS公式ドキュメント内のページを翻訳した内容を基に構成されています。 下記の項目を確認し、必要に応じて公式のドキュメントをご確認ください。 もし、誤訳などの間違いを見つけましたら、 @tomofまで教えていただければ幸いです。

  • AngularJSの更新頻度が高いため、元のコンテンツと比べてドキュメントの情報が古くなっている可能性があります。
  • "訳注:"などの断わりを入れた上で、日本人向けの情報やより分かり易くするための追記を行っている事があります。