NOVINKA! E-learningové kurzy umělé inteligence. Nyní AI za nejlepší ceny. Zjisti více:
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: Cannot read property 'emit' of undefined v Angular2

V předchozím kvízu, Online test znalostí JavaScript, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Wayne
Člen
Avatar
Wayne:21.9.2016 10:20

Ahoj mohl by mi někdo poradit proč hodnota na výstupu "getProduct" je undefined

Níže vkládám potřebný kód

@Output()
    getProduct = new EventEmitter();

ngAfterViewInit() {
        var treeview = $(".contentSelectTreePopupDiv").dxTreeView({
            dataSource: this.products,
            displayExpr: "name",
            disabledExpr: "enabled",
            height: 360,
            parentIdExpr: "parentId",
            searchValue: "",
            selectNodeRecursion: false,
            dataStructure: 'plain',
            onItemClick: function (e: any) {
                alert(e.itemData.name);
                this.selectProduct = e.itemData.name;
                this.getProduct.emit(this.selectProduct);
            }

        }).dxTreeView("instance");
}

kód

 
Odpovědět
21.9.2016 10:20
Avatar
Marian Benčat:21.9.2016 20:05

Jses si jistý, že this v tom onclick callbacku je opravdu to co si myslíš?

Dej za definici callbacku .bind (this);

Editováno 21.9.2016 20:06
Nahoru Odpovědět
21.9.2016 20:05
Totalitní admini..
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.