【问题标题】:How can I implement destructuring assignment for functional react components props?如何为功能性反应组件道具实现解构分配?
【发布时间】:2019-06-02 12:30:14
【问题描述】:

我正在尝试通过解构赋值方法传递功能组件道具。

在下面的这个例子中,我尝试使用这个概念,但它不起作用。 此代码的结果返回空并且不打印该属性。

import React from 'react';
import { render } from 'react-dom';

const App = ({ username: name }) => (<h1>{username}</h1>)

render(
   <App name="Tom" />,
   document.getElementById('root')
);

关于如何处理这个问题的任何想法?

【问题讨论】:

    标签: javascript reactjs ecmascript-6 destructuring


    【解决方案1】:

    您从 App 传递的道具是 name 而不是 username

    改一下

    const App = ({ username : name })
    

    到这里

    const App = ({ name: username })
    

    import React from 'react';
    import { render } from 'react-dom';
    
    const App = ({ name: username }) => (<h1>{username}</h1>)
    
    render(
       <App name="Tom" />,
       document.getElementById('root')
    );
    

    【讨论】:

    • Tnx 现在可以工作了。为什么它以某种 opossit 语法填充名称和用户名值?
    • @SalarBahador 语法为{ propertyName : reference variable },您可以阅读this 了解更多信息
    • 那么这个结构和javascript中的其他对象结构有什么不同?通常,我们说定义对象,如:obj = { key : value }
    • @SalarBahador 在这里你没有定义一个你从对象中挑选值的对象
    猜你喜欢
    • 2019-08-13
    • 2021-03-27
    • 2020-10-13
    • 2019-11-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-20
    • 2021-10-16
    • 2019-12-25
    相关资源
    最近更新 更多