react-native - 我如何让 datetimepicker 选择用户设置部署本地通知的时间?
问题描述
我怎样才能让 datetimepicker 选择用户设置的触发本地调度通知的时间?
到目前为止,我已经走了多远,但是当我在选择时间和日期时按确定时,通知会直接触发,而不是在我设置的时间触发。
date: new Date(Date.now() + 60 * 1000) // 60 秒 <<
import React, { useState } from "react";
import { Button, View } from "react-native";
import DateTimePickerModal from "react-native-modal-datetime-picker";
import PushNotification from 'react-native-push-notification';
import Fontisto from 'react-native-vector-icons/Fontisto';
const DateTimePicker = () => {
const [isDatePickerVisible, setDatePickerVisibility] = useState(false);
const showDatePicker = () => {
setDatePickerVisibility(true);
};
const hideDatePicker = () => {
setDatePickerVisibility(false);
};
const Notification = () => {
PushNotification.configure({
onRegister: function(token) {
console.log("TOKEN:", token);
},
onNotification: function(notification) {
console.log("NOTIFICATION:", notification);
},
permissions: {
alert: true,
badge: true,
sound: true
},
popInitialNotification: true,
requestPermissions: true
});
}
const SheduledNotification = date => {
PushNotification.localNotificationSchedule({
//... You can use all the options from localNotifications
id: '0',
repeatType: 'day', // (optional) Repeating interval. Check 'Repeating Notifications' section for more info.
largeIcon: "ic_launcher", // (optional) default: "ic_launcher"
smallIcon: "ic_notification", // (optional) default: "ic_notification" with fallback for "ic_launcher"
message: "My Notification Message", // (required)
date: new Date(Date.now() + 60 * 1000) // in 60 secs
});
}
return (
<View>
<Fontisto style={{alignSelf: 'flex-end'}} name='date' size={30} color='#000' onPress={showDatePicker} />
<DateTimePickerModal
isVisible={isDatePickerVisible}
mode="datetime"
onConfirm={SheduledNotification}
onCancel={hideDatePicker}
/>
</View>
);
};
export default DateTimePicker;
解决方案
您是否尝试过date
直接使用new Date()...
推荐阅读
- jquery - 突出显示在特定单元格中具有最大值的表格行
- delphi - 如何在没有错误消息的情况下声明内联变量?
- c++ - 为什么我用 -LTO 构建的 C++ 二进制文件非常大?
- javascript - 如何使 javascript 可拖动在移动设备上工作
- c# - 如何将数组的包含从一个表单移动到另一个表单?
- laravel - PackageManifest.php 第 131 行未定义索引:尝试安装软件包后的名称
- php - 在没有循环的情况下访问 PHP 中的 JSON 对象值
- api - 使用 Shopify API 的 Google Apps 脚本分页
- android - 当应用程序被杀死时,从firebase控制台发送通知初始化应用程序类
- python - 如何使用 Python 在 CSV 中保存非英语单词?