Я пытаюсь адаптировать дизайн моего приложения к планшету, и один из способов определить, работает ли приложение на планшете, - это использовать модуль DeviceInfo, в частности метод isTablet ().Как я могу использовать этот метод для условного применения стилей к элементу?
Вот что я пытаюсь сделать в данный момент:
import { checkIfDeviceIsTablet } from './helper-functions';
<View style={[styles.wrapper, checkIfDeviceIsTablet() === true ? styles.wrapperTablet : {}]}>
{contents}
</View>
Функция checkIfDeviceIsTablet () выглядит следующим образом:
import DeviceInfo from 'react-native-device-info';
function checkIfDeviceIsTablet() {
DeviceInfo.isTablet().then(isTablet => {
return isTablet;
});
}
Проблема заключается в том, что при загрузке компонента метод checkIfDeviceIsTablet () возвращает обещание, а не ожидаемое значение true / false, поэтому условные стили не применяются при запуске приложения на планшете.,Я попытался преобразовать функцию в формат async / await с помощью try / catch, но результат тот же.
Я бы использовал собственную функцию React Native Platform.isPad, но приложение также должно работать на Android.
Любая помощь приветствуется.