Я хочу взять часть элемента JSON. У меня есть формат JSON, например
{
"reservation":[
{
"resa":"1902211200-1802211330"
},
{
"resa":"1902221130-1902221230"
}
]
}
и для каждого резервирования я хочу иметь доступ только к 4 последним значениям - так что здесь 1330 для первого реса и 1230 для второго
<View>
<FlatList
data= {this.state.JsonList}
renderItem = {({item}) => <Text>{item.resa}.substring(17, 20)</Text>}
keyExtractor = {(item, index) => index.toString()} />
</View>
подстрока не работает и отображает подстроку слова, но я не могу найти, как это сделать. Можете ли вы сказать мне, как я могу отображать только часть значения JSON?

Вы должны содержать полную функцию в {}, если хотите, чтобы она правильно вычисляла подстроку. Все, что находится за пределами {}, будет отображаться как строка.
<Text>{item.resa.substring(17, 21)}</Text>
Вы также захотите изменить его так, чтобы вы включали последний символ в строку. В противном случае, если вы используете substring(17, 20), вы получите только 133 вместо 1330, поэтому используйте substring(17, 21)
let item = { resa: "1902211200-1802211330" }
console.info(item.resa.substring(17,20)) // 133
console.info(item.resa.substring(17,21)) // 1330
console.info(item.resa.substring(item.resa.length-4)) // you could use the length to calculate the substring
console.info(item.resa.slice(-4)) // you could always use sliceесли вам всегда нужны последние четыре, попробуйте это item.resa.slice(-4)
.substring(....)также должен появиться внутри}: переместите его туда:{item.resa.substring(17, 20)}. Обратите внимание, что.slice(-4)может быть более практичным.