3

Hallo allerseits Ich fragte mich, wie man die Staatsparameter von einem Staat mit Angular 2, TypScript & UI-Router bekommen. Ich habe versucht, die neuen Dokumente zu überprüfen, aber sie scheinen nicht viel Dokumentation für ng2 Ui-Router zu haben.Angular 2, TypeScript & ui-router - Wie bekomme ich staatliche params

Unten habe ich meine component.ts als Referenz hinzugefügt. Jede Hilfe würde sehr geschätzt werden.

import {Component} from '@angular/core'; 
import {HTTP_PROVIDERS} from '@angular/http'; 
import {UIRouter} from 'ui-router-ng2/router'; 

@Component({ 
    selector: 'Detail', 
    template: require('./detail.html'), 
    providers: [HTTP_PROVIDERS] 
}) 

export class Detail { 
    constructor(private uiRouter:UIRouter) { 
    console.log('uiRouter ', this.uiRouter.globals.params); 
    } 
} 

In Angular 1 Ich würde dies wie folgt tun:

(function() { 
    'use strict'; 

    angular 
    .module('private') 
    .controller('Controller', Controller); 

    function Controller($state) { 
    var vm = this; 
    console.log($state.params.studentID); 
    } 
})(); 

Wieder irgendwelche Ratschläge wäre sehr dankbar.

Antwort

2

Ich war in der Lage, den Zustand param Problem zu beheben ich mit wurde im Anschluss an die durch tun:

import {Component} from '@angular/core'; 
import {HTTP_PROVIDERS} from '@angular/http'; 
import {UIROUTER_DIRECTIVES} from 'ui-router-ng2'; 
import {UIRouter} from 'ui-router-ng2/router'; 

@Component({ 
    selector: 'Detail', 
    template: require('./detail.html'), 
    directives: [UIROUTER_DIRECTIVES], 
    providers: [HTTP_PROVIDERS] 
}) 

export class Detail { 
    public detailParam: any; 

    constructor(private uiRouter:UIRouter) { 
     this.detailParam = this.uiRouter.globals.params; 
     console.log('state params: ', this.detailParam); 
    } 
} 

Aber nach ein wenig mehr Forschung fand ich hier eine bessere Dokumentation über ui-Router für Angular 2 :https://ui-router.github.io/ng2/

Sieht aus wie die richtige Art und Weise mit staatlichen params des Umgangs mit

import {Transition} from "ui-router-ng2" 

Und mit

trans.params().detailID 

war ich nicht in der Lage, die trans.params zu bekommen() in diesem besonderen Moment zu arbeiten, aber zumindest fand ich eine vorübergehende Lösung und eine bessere Dokumentation die richtige Lösung zu finden .

+0

Jetzt auch ich gleiche Zweifel haben, wenn u die richtige Lösung erhalten Sie kommentieren, dass . –