2016-12-15 2 views
0

Ich kann meinem WrapLayout kein Kind hinzufügen. Hier ist meine choose_time.html:Ortsangabe. Angular2 + Typescript. Fügen Sie Child zu WrapLayout hinzu

<WrapLayout #wrapLayout> 
</WrapLayout> 

hier mein choose_time.component.ts ist:

import { Component, ElementRef, ViewChild } from "@angular/core"; 
import { WrapLayout } from 'ui/layouts/wrap-layout' 
import labelModule = require("ui/label"); 

@Component({ 
    selector: "choose_time", 
    providers: [], 
    templateUrl: "pages/choose_time/choose_time.html", 
    styleUrls: ["pages/choose_time/choose_time-common.css"] 
}) 

export class ChooseTimeComponent implements OnInit { 
@ViewChild("wrapLayout") wrapLayout: ElementRef; 

    constructor(
    private page: Page) {} 

    ngOnInit() { 
     this.page.actionBarHidden = true; 
     this.setChildren() 
    } 

    setChildren(){ 
     var label = new labelModule.Label(); 
     label.text = "text"; 
     this.wrapLayout.addChild(label) 
    } 

Was mache ich falsch?

Antwort

2

Wenn Sie einen TypScript-fähigen Editor verwenden und die TS-Unterstützung korrekt konfiguriert wurde, wird in der letzten Zeile Ihres Codes ein Fehler angezeigt.

Ändern Sie es zu (<WrapLayout>this.wrapLayout.nativeElement).addChild(label); und es funktioniert wie ein Chef! Der Schlüssel hier ist .nativeElement hinzufügen.

+0

Ja, es funktioniert !!! Danke vielmals!!! –

+0

Cool, bitte akzeptieren Sie die Antwort, damit andere sie leicht finden können. Prost! –

Verwandte Themen