为什么UiKit组件不接受角度输入?

时间:2017-04-19 08:49:53

标签: javascript angular typescript input uikit

我正在尝试传递布尔值作为输入,如下所示:

import { Component, Input, AfterViewInit, OnInit, AfterContentInit } from '@angular/core';


@Component({
    selector: "dac-accordion",
    templateUrl: "./dac-accordion.html",
})

export class DacAccordion implements OnInit {

    @Input("dac-collapse")
    collapse: boolean = false;

    constructor() {
    }

    ngOnInit() {
        console.log(">>>>>>> ", this.collapse); //This prints false.
        UIkit.accordion($("#accordion"), { collapse: this.collapse});
    }

}

当我打印出“this.collapse”的值时,它会输出“false”,因为我正在使用angular2中的@Input指令传递它。

但这似乎不适用于此代码段。

只有当我明确地尝试传递它时才有效:

UIkit.accordion($("#accordion"), { collapse: false });

发生了什么事?!它是UiKit本身的东西吗?!

1 个答案:

答案 0 :(得分:0)

问题是因为在Angular中如果我写input="false",则此输入将作为' String'传递给组件输入。而不是'布尔',所以当我打印折叠值时,它打印" False",但不打印布尔值。所以基本上我已经转换了" collapse"的字符串值。 to Boolean并将其传递给组件选项,并且工作正常。