2017-05-11 3 views
0

Ich versuche, den ausgewählten Wert "c [3]" mit Winkel 2 zu senden. Was ich will ist: Wenn ich ein Element auswähle, werden die Details zu diesem Element angezeigt . Dann klicke ich auf Senden, um diesen Wert zu senden und auf eine Antwort zu warten. Mein Problem ist im zweiten Teil, ich kann den ausgewählten Artikel nicht über das Formular senden. Ein Fehler wird angezeigt, wenn ich den Code versuche, den ich geschrieben habe:Angular 2 => Kein Provider für {ClassName}

Inline-Vorlage: 14: 8 verursacht durch: Kein Anbieter für Standard!


selectedinput.html

<form (ngSubmit)="onSubmit(f.value)" > 
    <form (ngSubmit)="onSubmit(f)" #f="ngForm"> 
     <div class="form-group"> 
     <div class="form-group"> 
     <label for="exampleSelect1">Example select</label> 
     <select class="form-control" [(ngModel)] = "selection2" (change)="selectionChanged()" name="addresseAdmin" > 
     <option *ngFor="let c of users" [ngValue]="'E-mail : '+c[2] +'&nbsp;'+'@: '+ c[4]" > {{c[0]}}&nbsp;{{c[1]}}</option> 
     </select> 
     <br> {{selection2}} 

     </div> 
    </div> 
</form> 


selectedinput.component.ts

constructor(public adminService :adminService,private standard: 
standard) {} 

ngOnInit() { 
    this.adminService.getData().subscribe(response=>{ 
    this.users=response.users,console.log(this.users) 
    }); 
} 

    onSubmit(form: NgForm) { 
    this.standard.create(this.addresseAdmin) 
      .subscribe(response=>{console.log("response",response); 

     }) 
    } 

sendreponse.service.ts

@Injectable() 
    export class standard { 
    handleError: any; 
    private Url ='http://localhost:3000/register/permission'; 
    constructor (private http: Http) {} 
    private extractData(res: Response) { 
     let body = res.json(); 
     return body || { }; 
    } 
    create(addresseAdmin): Observable<any> { 
     let headers = new Headers({ 'Content-Type': 'application/json' }); 
     let options = new RequestOptions({ headers: headers }); 
     return this.http.post(this.Url, addresseAdmin, options) 
       .map(this.extractData); 
     } 


    } 

Ich möchte nur die c [2] Wert in Form senden weiß, dass meine Daten in einem Array bestückt werden!

+0

ich den Titel aktualisiert, um die Antwort zu reflektieren. Ich hoffe, es wird später anderen Menschen helfen. –

Antwort

4

Sie benötigen eine Standardklasse in die Anbieter Ihres Moduls hinzuzufügen:

import {standard} from 'somewhere/over/the/rainbow' 

@NgModule({ 
    providers: [ 
     standard 
    ] 
}) 
Verwandte Themen