json - 使用 React-Native 从 JSON 中提取数据
问题描述
这张照片有什么问题?:-)
我正在尝试从我的 wordpress JSON 对象中提取值。
我不能用 React-Native 以正确/正确的方式解决它们。
有人可以指导我如何形成正确的控制台日志语句吗?
就目前而言,变量“theMediaLink”在控制台日志中出现“未定义”。:-(
state={
data:[]
}
fetchData = async() => {
const response = await
//response
fetch('http://example.com/wp-json/wp/v2/posts/')
//posts
const posts = await response.json();
this.setState({data:posts});
const theMediaLink = `https://example.com/wp-json/wp/v2/media/` + `${this.state.data.featuredmedia}`;
console.log('theMediaLink_value: ', theMediaLink);
}
我应该补充一点,当我稍后使用 FLATLIST 来提取帖子时,获取正在检索数据。我的问题是我一定是打错电话了,但是怎么办?
解决方案
这更多是对 React 的理解问题,而不是 React Native。
尝试这个:
fetchData = async () => {
const URL = 'http://example.com/wp-json/wp/v2/posts/'
const response = await fetch(URL)
const posts = await response.json();
return this.setState({ data : posts }, () => {
const { data } = this.state
const theMediaLink = `https://example.com/wp-json/wp/v2/media/${ data.featuredmedia }`;
console.log('theMediaLink_value: ', theMediaLink);
});
}
由于setState
是异步的,因此您将无法立即看到状态更新,这就是使用的原因callback
。
推荐阅读
- linux - Windows SCP 在尝试 SCP 文件时给出奇怪的响应
- c# - C#中按第一项分组的MongoDb数据查询
- c# - 当 DataGridView 中的当前行更改时,绑定的文本框值不会更新
- c++ - 将 RGBA 图像转换为 RGB 图像
- batch-file - 如何使用命令提示符将现有的 Java 项目导入到 Eclipse 工作区
- java - 我在使用 android studio 开发 android 应用程序时遇到了 minCompileSDK 问题
- javascript - 无限调用 UseEffect UseSelector UseDispatch React.js
- html - Bootsrap中3列中的组列表
- ms-project - 将 XML 导入 MS 项目时,其开始和完成日期发生了变化
- scala - 为 Scala (SBT) 运行回归测试选择 (RTS) - Ekstazi/STARTS