Heim > Web-Frontend > js-Tutorial > Hauptteil

Wie übergeben Sie mit ui-sref Parameter an Zustände im UI-Router?

Susan Sarandon
Freigeben: 2024-11-09 00:22:01
Original
1059 Leute haben es durchsucht

How Do You Pass Parameters to States in UI-Router with ui-sref?

Parameterübergabe im UI-Router mit ui-sref verstehen

Im UI-Router erfordert die Übergabe von Parametern an einen Status beim Übergang über ui-sref eine spezielle Konfiguration. Schauen wir uns die Schritte genauer an:

1. Definieren Sie URL-Parameter:

Definieren Sie die erwarteten URL-Parameter in der URL-Eigenschaft des Staates. Die Syntax lautet:paramName? Dabei ist paramName der Parameter, den Sie erhalten möchten. Zum Beispiel:

.state('home', {
  url: '/:foo?bar',
Nach dem Login kopieren

2. Weisen Sie ui-sref Parameterwerte zu:

Übergeben Sie Parameterwerte als Objekt in geschweiften Klammern an ui-sref. Die Syntax lautet ui-sref="stateName({paramName: 'value', ...})". Beispiel:

<a ui-sref="home({foo: 'fooVal', bar: 'barVal'})">Go to home with foo and bar parameters</a>
Nach dem Login kopieren

3. Verwenden Sie $stateParams im Controller:

Fügen Sie im Controller für den Zielstatus $stateParams ein, das die übergebenen Parameter enthält. Rufen Sie die Werte mit $stateParams.paramName ab. Beispiel:

app.controller('SomeController', function($scope, $stateParams) {
  var foo = $stateParams.foo;
  var bar = $stateParams.bar;
})
Nach dem Login kopieren

4. Übergabe von Nicht-URL-Parametern:

Zusätzlich zu den Parametern in der URL können Sie zusätzliche Parameter in der Parameterkonfiguration des Staates definieren. Dadurch können Sie Parameter übergeben, die nicht Teil der URL sind. Beispiel:

.state('home', {
  url: '/:foo?bar',
  params: {
    foo: { value: 'defaultValue', squash: false, },
    hiddenParam: 'YES'
  }
Nach dem Login kopieren

In params definierte Parameter können mit $state.go() oder ui-sref übergeben werden. Sie werden nicht in die URL aufgenommen.

5. Array-Parameter:

Sie können Parameter auch als Arrays deklarieren, indem Sie array: true in der Parameterkonfiguration festlegen. Beispiel:

params: {
  bar: { array: true, }
}
Nach dem Login kopieren

Denken Sie daran, beim Übergeben von Array-Werten eckige Klammern zu verwenden:

<a ui-sref="home({foo: 'fooVal1', bar: ['barVal1', 'barVal2']})">...</a>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie übergeben Sie mit ui-sref Parameter an Zustände im UI-Router?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage