如何使用reactjs状态从数组中的项目访问数据?

9分钟

我正在尝试从我从Django-rest API获取的数组中的主对象中获取数据(id)。

我将使用ID将其传递到获取网址。

我尝试使用item.id,但没有获得ID值。

这是“任务”数组的格式。

[
    {
        "title": "Task 4",
        "description": "Task 4",
        "video": "ad12312312",
        "done": false,
        "steps": [
            {
                "title": "Task 4 Task 1",
                "description": "Task 4 Task 1",
                "done": false,
                "task_id": 4,
                "id": 10
            },
            {
                "title": "Task 4 Task 2",
                "description": "Task 4 Task 2",
                "done": false,
                "task_id": 4,
                "id": 11
            },
            {
                "title": "Task 4 Task 3",
                "description": "Task 4 Task 3",
                "done": false,
                "task_id": 4,
                "id": 12
            }
        ],
        "id": 4
    }
]
class Screen extends Component {

  constructor() {
    super();
    this.state = {
      task: [],
    };
  }

  componentDidMount() {
    AppState.addEventListener('change', this._handleAppStateChange);
    fetch('https://url.com/daily-ecommerce/', {
      method: 'GET',
      headers: {
        'Authorization': `Token xxxxx`
      }
    })
    .then( res => res.json())
    .then( jsonRes => this.setState({ task: jsonRes }) )
    .catch( error => console.log(error))
    .then(console.log(this.state.task.id))
    fetch(`https://url.com/step/?task_id=${this.state.task.id}`, {
      method: 'GET',
      headers: {
        'Authorization': `Token xxxxx`
      }
    })

我需要访问任务的ID。(在这种情况下,“ id”:4)

明晰

您需要在回调中获取IDsetState以确保已将其设置为:

 componentDidMount() {
   AppState.addEventListener('change', this._handleAppStateChange);
   fetch('https://url.com/daily-ecommerce/', {
       method: 'GET',
       headers: {
         'Authorization': `Token xxxxx`
       }
     })
     .then(res => res.json())
     .then(jsonRes => this.setState({
       task: jsonRes
     }, () => {
       fetch(`https://url.com/step/?task_id=${this.state.task[0].id}`, {
         method: 'GET',
         headers: {
           'Authorization': `Token xxxxx`
         }
       })
     }))
     .catch(error => console.log(error))
 }

另一种方法是直接从json响应中传递ID:

  componentDidMount() {
   AppState.addEventListener('change', this._handleAppStateChange);
   fetch('https://url.com/daily-ecommerce/', {
       method: 'GET',
       headers: {
         'Authorization': `Token xxxxx`
       }
     })
     .then(res => res.json())
     .then(jsonRes => {
       this.setState({
         task: jsonRes
       })
       fetch(`https://url.com/step/?task_id=${jsonRes[0].id}`, {
         method: 'GET',
         headers: {
           'Authorization': `Token xxxxx`
         }
       })
     })
     .catch(error => console.log(error))
 }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

ReactJS从状态(对象数组)中删除项目

来自分类Dev

如何使用Swift动态访问数组中的项目

来自分类Dev

如何使用Swift动态访问数组中的项目

来自分类Dev

ReactJs-如何更新数组中的状态?

来自分类Dev

如何从reactjs中的状态列出数组?

来自分类Dev

如何在不更新ReactJs中数组的每个列表的情况下更新数组列表中单个项目的状态

来自分类Dev

ReactJS-使用map迭代数组中的每个项目(从状态开始)。项目的属性未定义

来自分类Dev

如何访问JavaScript数组中的项目?

来自分类Dev

如何使用jQuery访问多维数组中的数据?

来自分类Dev

如何使用axios在发布请求中传递ReactJS状态数据时解决问题?

来自分类Dev

ReactJS->如何使用数据库中的信息填充状态?

来自分类Dev

如何访问数组中对象的数据成员

来自分类Dev

ReactJS中的WebSocket使用空数组设置状态

来自分类Dev

从状态数组中删除项目

来自分类Dev

使用 ReactJS 从数组中的数组中获取数据

来自分类Dev

ReactJS-如何从功能组件的数组中删除项目?

来自分类Dev

如何在reactjs中访问JSON数组的元素?

来自分类Dev

如何从同级状态访问数据?

来自分类Dev

从数组状态更改数据reactjs

来自分类Dev

访问数组中的数据

来自分类Dev

如何访问序列化数组中的单个项目?

来自分类Dev

在 ReactJS 中访问文件之间的状态

来自分类Dev

如何使用JavaScript中的PATCH请求将项目添加到数据库中的数组?

来自分类Dev

如何使用JavaScript中的PATCH请求将项目添加到数据库中的数组?

来自分类Dev

如何使用 JavaScript 访问 JSON 数据中嵌套数组中的特定元素?

来自分类Dev

访问使用Laravel View :: share共享的数组中的项目

来自分类Dev

(PHP)使用foreach循环访问数组中的特定项目

来自分类Dev

如何从 FlastList 处理多个项目的状态(如何从数组中设置多个项目?)

来自分类Dev

如何使用jQuery访问数组中的值

Related 相关文章

  1. 1

    ReactJS从状态(对象数组)中删除项目

  2. 2

    如何使用Swift动态访问数组中的项目

  3. 3

    如何使用Swift动态访问数组中的项目

  4. 4

    ReactJs-如何更新数组中的状态?

  5. 5

    如何从reactjs中的状态列出数组?

  6. 6

    如何在不更新ReactJs中数组的每个列表的情况下更新数组列表中单个项目的状态

  7. 7

    ReactJS-使用map迭代数组中的每个项目(从状态开始)。项目的属性未定义

  8. 8

    如何访问JavaScript数组中的项目?

  9. 9

    如何使用jQuery访问多维数组中的数据?

  10. 10

    如何使用axios在发布请求中传递ReactJS状态数据时解决问题?

  11. 11

    ReactJS->如何使用数据库中的信息填充状态?

  12. 12

    如何访问数组中对象的数据成员

  13. 13

    ReactJS中的WebSocket使用空数组设置状态

  14. 14

    从状态数组中删除项目

  15. 15

    使用 ReactJS 从数组中的数组中获取数据

  16. 16

    ReactJS-如何从功能组件的数组中删除项目?

  17. 17

    如何在reactjs中访问JSON数组的元素?

  18. 18

    如何从同级状态访问数据?

  19. 19

    从数组状态更改数据reactjs

  20. 20

    访问数组中的数据

  21. 21

    如何访问序列化数组中的单个项目?

  22. 22

    在 ReactJS 中访问文件之间的状态

  23. 23

    如何使用JavaScript中的PATCH请求将项目添加到数据库中的数组?

  24. 24

    如何使用JavaScript中的PATCH请求将项目添加到数据库中的数组?

  25. 25

    如何使用 JavaScript 访问 JSON 数据中嵌套数组中的特定元素?

  26. 26

    访问使用Laravel View :: share共享的数组中的项目

  27. 27

    (PHP)使用foreach循环访问数组中的特定项目

  28. 28

    如何从 FlastList 处理多个项目的状态(如何从数组中设置多个项目?)

  29. 29

    如何使用jQuery访问数组中的值

热门标签

归档