Javascript 显示嵌套Json数组获取的数据
所以我对react native还不太熟悉,我试图显示Json获取数据的嵌套元素,但我不知道该怎么做。 在fetch api中使用react挂钩后:Javascript 显示嵌套Json数组获取的数据,javascript,reactjs,react-native,ecmascript-6,Javascript,Reactjs,React Native,Ecmascript 6,所以我对react native还不太熟悉,我试图显示Json获取数据的嵌套元素,但我不知道该怎么做。 在fetch api中使用react挂钩后: export default function MedProfilScreen({ route }) { //const {id,name,specialite,work}=route.params; const [data, setData] = useState([]); useEffect(() => { fetch
export default function MedProfilScreen({ route }) {
//const {id,name,specialite,work}=route.params;
const [data, setData] = useState([]);
useEffect(() => {
fetch("http:......")
.then(response => response.json())
.then(res => {
setData(
res);
console.log(res);
})
.done();
},[]);
}
我得到的答复是:
Array [
Object {
"code": "12459552",
"id": 7,
"name": "Dr xavier vilan",
"speciality": "Cardio",
},
Object {
"education": Array [
Object {
"date_debut": "2020-02-07",
"date_end": "2020-02-06",
"diploma": "asmaa",
"school": "asmaa",
"city": "vullez",
},
]}
]
所以我想显示例如:name:xavier博士。。文凭:asmaa
return(
<View> name: Dr xavier.. diploma: asmaa </View>
)
返回(
姓名:xavier博士毕业证书:asmaa
)
任何人都知道怎么做。谢谢你试试这个:
return (
<View>{JSON.stringify(data, null, 2)}</View>
)
返回(
{JSON.stringify(数据,null,2)}
)
我不知道这是您要找的,但我会尝试一下:
代码:
const renderText = () => {
// as soon as we received the data, we will display it
if (data.length > 0){
return (
<Text> name: {data[0].name} diploma: {data[1].education[0].diploma}</Text>
)
}
}
return (
<View>
{renderText()}
</View>
);
const renderText=()=>{
//一旦我们收到数据,我们将显示它
如果(data.length>0){
返回(
名称:{data[0]。名称}文凭:{data[1]。教育[0]。文凭}
)
}
}
返回(
{renderText()}
);
输出:
const renderText = () => {
// as soon as we received the data, we will display it
if (data.length > 0){
return (
<Text> name: {data[0].name} diploma: {data[1].education[0].diploma}</Text>
)
}
}
return (
<View>
{renderText()}
</View>
);
演示:
const renderText = () => {
// as soon as we received the data, we will display it
if (data.length > 0){
return (
<Text> name: {data[0].name} diploma: {data[1].education[0].diploma}</Text>
)
}
}
return (
<View>
{renderText()}
</View>
);
既然您已经将响应保存在
数据中,您的数据应该是这样的
data = [
{
code: "12459552",
id: 7,
name: "Dr xavier vilan",
speciality: "Cardio"
},
{
education: [
{
date_debut: "2020-02-07",
date_end: "2020-02-06",
diploma: "asmaa",
school: "asmaa",
city: "vullez"
}
]
}
]
现在您可以访问姓名
和文凭
,如下所示:
name: data[0].name
diploma: data[1].education[0].diploma
希望这对你有帮助。如果有疑问,请放心试着引用您想要的项目
return(
<View>
<Text> name: {data[0].name} diploma: {data[1].education[0].diploma}
</Text>
</View>
)
返回(
名称:{data[0]。名称}文凭:{data[1]。教育[0]。文凭}
)
它刚刚在我的应用程序屏幕上显示了res的控制台日志是的,这是我需要的,但我刚刚收到输入错误:数据[0]。名称不是object@AymenAymen我已经更新了我的答案和网站的链接谢谢你的回复,蒂姆的答案已经修正了!谢谢你的回复,蒂姆的回答上面修正了它!