ui-router で ui-sref を使用してコントローラーにパラメーターを渡すにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-06 18:56:02
オリジナル
573 人が閲覧しました

How can I Pass Parameters to Controllers Using ui-sref in ui-router?

ui-router で ui-sref を使用してコントローラーにパラメータを渡す

ui-router で、ui-sref を使用して状態に遷移するコントローラーにパラメーターを渡すことができます。明確にするために、2 つのパラメータ「foo」と「bar」をターゲット状態に送受信できます。

状態定義

受け入れるように状態定義を更新します。 URL 内のパラメータ:

  $stateProvider
    .state('home', {
      url: '/:foo?bar',
      views: {
        '': {
          templateUrl: 'tpl.home.html',
          controller: 'MainRootCtrl'
        }
      }
    });
ログイン後にコピー

コントローラーConsumption

コントローラー内で、$stateParams からパラメーターを取得します。

  .controller('MainRootCtrl', function($scope, $state, $stateParams) {
    //..
    var foo = $stateParams.foo; //getting fooVal
    var bar = $stateParams.bar; //getting barVal
    //..
  })
ログイン後にコピー

Link Generation

パラメーターを渡すには、次を使用します。この構文:

<a ui-sref="home({foo: 'fooVal', bar: 'barVal'})">
ログイン後にコピー

これは、指定された foo パラメーターと bar パラメーターを持つ 'home' 状態。$stateParams を介してコントローラーでアクセスできます。

パラメーターのカスタマイズ (オプション)

状態定義の「params」プロパティを使用すると、パラメータの動作をさらに構成できます:

  $stateProvider
    .state('other', {
      url: '/other/:foo?bar',
      params: {
        foo: {
          value: 'defaultValue',
          squash: false,
        },
        bar: {
          array: true,
        },
        hiddenParam: 'YES',
        // (not in URL)
      }
    });
ログイン後にコピー

パラメータ設定include:

  • value: デフォルト値
  • array: パラメータ値を配列として扱う
  • squash: URL でのデフォルト値表現を制御

パラメータインジェクション

コントローラパラメータの注入は $stateParams 経由で行われます。次のコマンドを使用して値を取得できます。

var paramValue = $stateParams.paramName;
ログイン後にコピー

これは、UI ルーターが ui-sref を使用して状態間のパラメーターの受け渡しを可能にし、コントローラーでの状態遷移とパラメーターへのアクセスを容易にする方法です。

以上がui-router で ui-sref を使用してコントローラーにパラメーターを渡すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!