异步将notification_id推送到simpleStore只会推送每个循环的最后一个notification_id

时间:2018-11-26 15:59:42

标签: javascript react-native asynchronous expo

我尝试将通知推送给用户,并将通知ID存储到simpleStore,以供将来根据其设置的时间进行更新和删除。但是,每个循环的最后一个通知ID仅被推送到simpleStore。如果我运行一次,则不会推送三个,而只会推送最后一个ID。如果我运行两次,则只会推送第一个循环的最后一个ID和第二个循环的最后一个ID。但是,“ console.log(“ Notification ID” + notification_id);“确实给了我所有的ID ...所以我不知道为什么simpleStore.push(“ notifications”,notification_id);没有推送所有ID。非常感谢!

export var testMomentjs = () => {
  var start_time = moment('2018-11-28T12:50:00');
  var interval = 1;
  var end_time = moment('2018-11-28T12:52:00');


 while (start_time <= end_time) {


   Notifications.scheduleLocalNotificationAsync(LocalNotificationConfig, SchedulingOptions(start_time))
  .then(function(notification_id) {
    console.log("Notification ID" +notification_id);

    simpleStore.push("notifications",notification_id);

  });
  start_time.add(interval, 'minutes');
 }
}

要查看simpleStore内容:

export var logNotifications = () => {
   simpleStore.get('notifications').then(function(res) {
     console.log(res);
   })
}

0 个答案:

没有答案