你好,我最近刚开始学习本机反应。 我现在正尝试使用以下具有此确切api地址的代码从wordpress api获取数据,但没有加载任何内容。
import React from 'react';
import { FlatList, ActivityIndicator, Text, View } from 'react-native';
export default class FetchExample extends React.Component {
constructor() {
super();
this.state = {
posts: []
}
}
componentDidMount() {
let dataURL = "https://click9ja.com/wp-json/wp/v2/posts";
fetch(dataURL)
.then(response => response.json())
.then(response => {
this.setState({
posts: response
})
})
}
render() {
let posts = this.state.posts.map((post, index) => {
return
<View key={index}>
<Text>Title: {post.title.rendered}</Text>
</View>
});
return (
<View>
<Text>List Of Posts</Text>
<Text>{posts}</Text>
</View>
)
}
}
任何建议将不胜感激。
答案 0 :(得分:1)
首先将返回值括在括号中
let posts = this.state.posts.map((post, index) => {
return (
<View key={index}>
<Text>Title: {post.title.rendered}</Text>
</View>
);
});
第二,您不能在文本标签中呈现变量。应该是这样的
<View>{varaible}</View>
因此,<Text>{posts}</Text>
应该只是{post}
答案 1 :(得分:0)
当请求服务器时,提取将默认使用GET
方法。要将其设置为POST
方法或其他方法,则需要在提取中添加额外的参数
您的情况将是
fetch('https://click9ja.com/wp-json/wp/v2/posts', {
method: 'POST',
headers: {
Accept: 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
firstParam: 'yourValue',
secondParam: 'yourOtherValue',
}),
});
某些API需要标头和正文,请务必先阅读API文档以了解目的。
有关在React native中获取的更多信息,您可以访问它here 有关什么是API的更多信息,请访问here
希望获得帮助。