React Native - Импорт CheckBox из разных источников в зависимости от платформы

Рейтинг: 0Ответов: 1Опубликовано: 28.04.2023

Всем привет! Пишу мобильное и web приложение на React Native, где мне требуется использовать CheckBox. Но получается так, что в web-приложении чекбокс работает, когда я его импортирую из react-native-web:

import {CheckBox} from 'react-native-web'; 

А на мобильном устройстве (а именно - на Android) чекбокс работает, когда я его импортирую из @react-native-community/checkbox:

import CheckBox from '@react-native-community/checkbox';

Один импорт для всех устройств не срабатывает.

Мой вопрос: как я могу указать нужный мне импорт в зависимости от платформы? Я хотела воспользоваться Platform.select, но тогда возникает ошибка "'import' and 'export' may only appear at the top level.". Использовать разные расширения файлов в зависимости от платформы не хочется, поскольку код на данный момент отличается только этим импортом.

Ответы

▲ 1
import {CheckBox as CheckBoxIOS} from 'react-native-web';
import CheckBox as CheckBoxAndroid from '@react-native-community/checkbox';

В коде по Platform нужный отображаешь

https://learn.javascript.ru/import-export#eksportirovat-kak