如何在使用ionic2和angular2的通知中使用离子切换

时间:2016-09-29 07:01:12

标签: angular typescript ionic2

我在这里使用切换图标来设置通知活动/非活动。我正在接到来电的响应。 在get call中我得到的通知值为0或1,但我使用noteValue的ts文件是boolean意味着我们传递的是false是假的。

但是从数据库方面我们得到0或1,数据库方面它们只传递变量作为布尔值,但数据库存储的值为0或1。

由于noteValue切换图标工作不正确,意味着如果我刷新应用时传递true或false,它(切换图标)只能显示false。如果切换图标处于活动状态,则传递false值并且切换图标处于非活动状态真实的价值。

HTML:

<ion-item no-lines  >
   <ion-label class="ion-label"> Notification</ion-label>
   <ion-toggle (ionChange)="updateValue()" checked="noteValue"></ion-toggle></ion-item>

.TS:

export class NotificationPage {
 public noteValue:boolean;  
constructor(private navCtrl: NavController,private user:Users, private productServices:Products, private logger:Logger) {
    var _this = this;

// get call 
      this.productServices. getNotification(function(data){
         _this.logger.debug("checking my notification Details" +JSON.stringify(data));
         console.log(data.notification);
         _this.noteValue = data.notification[0];
         console.log(data.notification[0]);

      })

  }

//post call

updateValue(){
    var _this=this;

   _this.noteValue = !_this.noteValue; // If _this.noteValue is equal to true, now it will be set to false. If it's false, it will be set to true.

    let notificationDetails = {
      notification: _this.noteValue
    };
      console.log(notificationDetails);
      this.user.setNotification(notificationDetails, function (result, data) {
        _this.logger.debug("checking my notification Details" +data);
          if (result=='1') {
             console.log( _this.noteValue);
            //_this.noteValue=!_this.noteValue;
            _this.logger.debug("checking my notification Details" +data);
            alert("sucesscall for notification"+data.toString());
          }
          else {
            _this.logger.info("failure Notification");
            alert("failure for notification");
          }

          });

  }



}

1 个答案:

答案 0 :(得分:0)

如果我理解正确,在DB中您保存的值为0和1,而ion-toggle期望为true或false,您必须根据这些值启用/禁用它。

如果正确,使用angular2你可以这样做:

<ion-toggle (ionChange)="updateValue()" checked="{{your_DB_variable === 1 ? 'true':'false'}}"></ion-toggle>

根据your_DB_variable,它会设置为true还是false。

希望我帮助过你。 :)