#css #react-native
#css #react-native
Вопрос:
Итак, у меня есть две переменные, которые я получаю от серверной части следующим образом:
return (
<View key={i} style={styles.subCont}>
<Text style={[
styles.devicesInfoText,
styles.deviceNameText,
]}>
{`${x.name}* ${x.quantity}`}
</Text>
<Text style={styles.devicesInfoText}>{x.price} {constants.strings.sar}</Text>
</View>
)
Нет никакой гарантии, что имя будет арабским или английским, но мое приложение rtl, поэтому я хочу, чтобы количество всегда было слева, независимо от названия.
Это стили, которые я использую:
devicesInfoText: {
fontFamily: constants.fontFamily.bold,
fontSize: RFValue(14),
color: constants.colors.black,
},
deviceNameText: {
flexShrink: 1,
alignSelf: "center",
writingDirection: "rtl"
},
subCont: {
flexDirection: 'row-reverse',
justifyContent: 'space-between',
},
Ответ №1:
Чтобы иметь фиксированные текстовые места, вы могли бы просто разместить два текстовых компонента в одной строке, например, вы могли бы заменить:
<Text style={[
styles.devicesInfoText,
styles.deviceNameText,
]}>
{`${x.name}* ${x.quantity}`}
</Text>
С помощью этого:
<Text style={[
styles.devicesInfoText,
styles.deviceNameText,
]}>
{`${x.name}* `}
</Text>
<Text style={[
styles.devicesInfoText,
styles.deviceNameText,
]}>
{`${x.quantity}`}
</Text>
Комментарии:
1. Это абсолютно правильное решение, спасибо за ваш ответ, но мне было интересно, можно ли это сделать в одной строке вместо повторения кода.