#react-native #expo #expo-calendar
#react-native #выставка #expo-календарь
Вопрос:
Я пытаюсь использовать Expo-calendar в своем проекте.
Я хочу использовать тот Calendar.createEventAsync(calendarId, details)
, который работает нормально, когда у него есть разрешение как на календарь, так и на напоминание.
Однако меня беспокоит разрешение на напоминание.
Я использую Calendar.getDefaultCalendarAsync()
для получения идентификатора календаря по умолчанию, а затем использую Calendar.createEventAsync()
метод, чтобы просто создать событие в Календаре.
Я не хочу использовать напоминание, зачем мне нужно разрешение напоминания (для ios)? Есть ли какой-либо способ, которым я могу просто запросить разрешение календаря для создания события?
Это документация в Expo: Календарь выставки
Ответ №1:
Решение заключается в использовании:
return await Calendar.getCalendarsAsync(Calendar.EntityTypes.EVENT);
}```
and then trying to create an Event:
async function createEvent() {
try {
const defaultCalendar = await Calendar.getDefaultCalendarAsync();
await Calendar.createEventAsync(defaultCalendar.id, {
title: 'TEST',
startDate: new Date('2021-01-25'),
endDate: new Date('2021-01-26'),
});
console.log('Event was created.');
} catch (e) {
console.log(e.message);
}
}