2017-07-03 238 views
0

所以我已经搜查了所有我能找到的stackoverflows,但我似乎无法解决这个问题。 我想要的是切换页面视图上的开关,无论它被设置为最后。切换应该是的值是一个方法的返回值,它检查它应该是真还是假。Ionic2切换切换按钮状态基于方法

<ion-toggle class="user-toggle" (ionChange)="userChange($event, user)" checked="isInChosen(user)"> </ion-toggle> 

我证实了,当我使用标签checked="true",它按预期工作和负载为活动负载。但是,如果放入isInChosen(user),则无论该方法的实际返回值如何,它总是会启动false。相反,它根本不调用该方法。 我觉得我在这里错过了一些明显的东西,而且我可能是。

编辑:用于isInChosen(用户)的源代码

isInChosen(user) { 
    return this.chosenUsers.indexOf(user) != -1; 
} 

userChange(事件,用户)

userChange(event, user) { 
    if (this.isInChosen(user)) { 
     var index = this.chosenUsers.indexOf(user); 
     this.chosenUsers.splice(index, 1); 

    } else { 
     this.chosenUsers.push(user); 
    } 
} 
+0

请同时提供函数* userChange *和* isInChosen *的源代码。 –

回答

0

确定我理解了它。

我确实错过了那里的东西。忘了Angular2改变了事情,所以我不得不围绕checked与方括号,如下所示:[checked]=