为什么我们在 React js 中定义常量变量时使用花括号?

奥姆卡尔杜马尔

我编写以下代码来从 props 中获取标题。前:

export default function Articleinfo(props) {
    const  {edge}  = props.data.allNodeArticle;
    
    return(
        <>
          <div>
              <h1>Title:{edge[0].title}</h1>
              <h2>info:</h2>
          </div>
        </>
    );
};

我收到此错误:无法读取未定义的属性(读取“0”)

但是之后:当我删除花括号时它起作用了

export default function Articleinfo(props) {
    const  edge  = props.data.allNodeArticle;
    console.log(edge.nodes[0].title);
    const Title = edge.nodes[0].title;
    return(
        <>
          <div>
              <h1>Title:{edge.nodes[0].title}</h1>
              <h2>info:</h2>
          </div>
        </>
    );
};

有人能解释一下为什么会这样吗?它背后的概念是什么?

咖啡

花括号用于对象解构

在下面的链接中,解释了对象破坏的语法

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment#object_destructuring

所以当你这样做时

    const  {edge}  = props.data.allNodeArticle;

这意味着对象allNodeArticle有一个名为edge的键,您正在访问它

但是,当您执行以下操作并且出现错误时,这意味着 allNodeArticle 不是具有关键边缘的对象,而是它具有数组节点。

const  edge  = props.data.allNodeArticle;
console.log(edge.nodes[0].title);

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

我们为什么使用@Autowire

为什么我们使用抽象

为什么我们使用TaskStackBuilder?

React Native-为什么我们对图像组件使用tintColor属性?

为什么我们不能在Express.js中执行多个response.send?

为什么我们需要在express.js服务器上使用代理才能使Webpack热重载服务器功能与react-routing相结合

为什么我们使用setLayoutParams?

为什么我们必须在rails的application.js中要求JS文件?

我们为什么不在react-native中gitignore ios /和android /

为什么我们在react组件中使用由super.setState()插入的this.setState()

为什么我们需要在React Native中绑定函数?

我们为什么要使用'react'中的import React

为什么我们不需要在React中绑定箭头功能?

为什么我们在react-native中使用ProgressViewIOS组件中的progressImage属性?

为什么我们要在laravel中编译css和js文件?它有什么好处?

为什么我们使用()=> []而不是[]?

在React表单中,为什么我们要在输入标签中设置(例如)value = {this.state.task}?

我们如何,何时以及为什么在React JavaScript中清理组件?

为什么我们需要在React Hook中返回一个函数?

为什么我们使用@staticmethod?

为什么我们在reactjs中使用node.js和babel

为什么我们使用扩展?

ReactJS:为什么我们在创建 React 应用程序时使用 nodeJs?

为什么我们能够在 react 组件的构造函数中绑定函数?

为什么我们在通过 axios 获取数据时使用 useeffect() react hook?

为什么我们使用“NULL”?

为什么我们在 JS 中对函数使用扩展运算符?

为什么在某些情况下在 React 中我们使用圆括号而不是大括号

什么是 react 中的转发 ref 以及我们如何使用它以及为什么使用它。?