Rumah >hujung hadapan web >tutorial js >Bagaimanakah saya boleh Lulus Parameter kepada Pengawal Menggunakan ui-sref dalam ui-router?

Bagaimanakah saya boleh Lulus Parameter kepada Pengawal Menggunakan ui-sref dalam ui-router?

Susan Sarandon
Susan Sarandonasal
2024-11-06 18:56:02650semak imbas

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

Melalui Parameter kepada Pengawal Menggunakan ui-sref dalam ui-router

Dalam ui-router, menggunakan ui-sref untuk beralih kepada keadaan membenarkan penghantaran parameter kepada pengawal. Untuk menjelaskan, anda boleh menghantar dan menerima dua parameter, "foo" dan "bar," kepada keadaan sasaran.

Definisi Negeri

Kemas kini definisi keadaan untuk menerima parameter dalam URL:

  $stateProvider
    .state('home', {
      url: '/:foo?bar',
      views: {
        '': {
          templateUrl: 'tpl.home.html',
          controller: 'MainRootCtrl'
        }
      }
    });

Penggunaan Pengawal

Dalam pengawal, dapatkan semula parameter daripada $stateParams:

  .controller('MainRootCtrl', function($scope, $state, $stateParams) {
    //..
    var foo = $stateParams.foo; //getting fooVal
    var bar = $stateParams.bar; //getting barVal
    //..
  })

Penjanaan Pautan

Untuk menghantar parameter, gunakan sintaks ini:

<a ui-sref="home({foo: 'fooVal', bar: 'barVal'})">

Ini akan beralih ke keadaan 'rumah' dengan parameter foo dan bar yang ditentukan, yang kemudiannya boleh boleh diakses dalam pengawal melalui $stateParams.

Menyesuaikan Parameter (Pilihan)

Dengan sifat "params" dalam takrifan keadaan, anda boleh mengkonfigurasi lagi tingkah laku parameter:

  $stateProvider
    .state('other', {
      url: '/other/:foo?bar',
      params: {
        foo: {
          value: 'defaultValue',
          squash: false,
        },
        bar: {
          array: true,
        },
        hiddenParam: 'YES',
        // (not in URL)
      }
    });

Tetapan parameter termasuk:

  • nilai: Nilai lalai
  • tatasusunan: Anggap nilai parameter sebagai tatasusunan
  • labu: Kawal lalai perwakilan nilai dalam URL

Suntikan Parameter

Suntikan parameter pengawal dilakukan melalui $stateParams. Anda boleh mendapatkan semula nilai dengan:

var paramValue = $stateParams.paramName;

Beginilah cara penghala UI mendayakan pemindahan parameter antara keadaan menggunakan ui-sref untuk peralihan keadaan yang mudah dan kebolehcapaian parameter dalam pengawal.

Atas ialah kandungan terperinci Bagaimanakah saya boleh Lulus Parameter kepada Pengawal Menggunakan ui-sref dalam ui-router?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn