美文网首页
一次react中包含子组件难以理解的解构赋值

一次react中包含子组件难以理解的解构赋值

作者: 提米锅锅 | 来源:发表于2019-11-20 13:04 被阅读0次

不久前看到一个函数子组件的例子,十分费解,组件标签的函数怎么和构建函数的参数关联起来的:
代码1

const FC = ({children})=>children()
return  <FC>{(name)=><div>hello</div>}</FC> 

代码意图是FC是父组件,它会包装子组件,子组件是一个函数用于输出结果。

改成下面这样写就容易理解了
代码2

const FC = (props)=>{
   let {children} = props;
    return children()
}

说明:

1.每个fc都有props的参数,props有名字为children的属性表示子组件。
2.{(name)=><div>hello</div>}这个函数就是children。
3.代码块内用解构赋值得到了children,并且执行。

children是react内置的名字,所以如下用children2会报错,这样说明了代码1的写法children其实不是一个可以改变名字的变量,而是props的中的属性,所以凡是用这种方式来包含子组件,必然都会写成

FunctionName =({children})=

下面这样会报错

const FC = ({children2})=>children2()
return  <FC>{(name)=><div>hello</div>}</FC> 

这个例子告诉我,以后看到{abc}和abc真的不一样,解构赋值要牢记!!!

相关文章

  • 一次react中包含子组件难以理解的解构赋值

    不久前看到一个函数子组件的例子,十分费解,组件标签的函数怎么和构建函数的参数关联起来的:代码1 代码意图是FC是父...

  • React Native学习笔记(八)—— 父组件与子组件方法相

    在React native 开发中可以很方便的将通用的控件封装为子组件,本文主要介绍了父组件和子组件的交互,包含:...

  • 让代码更优雅——解构赋值、扩展操作符

    为了加深对解构赋值和扩展操作符概念的理解,今天随我来归纳总结一番 解构赋值 解构赋值可以快速的取得数组或对象中的元...

  • ES6知识点详解

    主要会贴上代码,这样容易理解些持续更新中...1.let const 2.解构赋值主要讲解了数组解构赋值和对象解构...

  • 变量的解构赋值

    本文通过学习阮一峰的博客,外加自己的理解,整理了一下我对js变量的解构赋值的理解。 数组的解构赋值 对象的解构赋值...

  • Vue-Element之数据赋值与重置

    父组件传递给子组件的对象变量,不能直接赋值或通过计算属性给子组件的变量赋值。因为对象的特性,直接赋值会使得子组件中...

  • 20.JavaScript-数组解构赋值

    1.什么是解构赋值 解构赋值是ES6中新增的一种赋值方式 2.数组解构赋值注意点 2.1 在数组的解构赋值中,等号...

  • react学习第三天笔记

    react路由 模块 下载react-router模块,版本3.0.5; 解构赋值:Router,Route,ha...

  • ES6 2.解构赋值

    解构赋值 解构赋值的分类 数组解构赋值 对象解构赋值 字符串解构赋值 布尔值解构赋值 函数参数解构赋值 数值解构赋...

  • React基础

    React包含react元素和react组件 react元素 react组件 react组件分为函数组件和类组件 ...

网友评论

      本文标题:一次react中包含子组件难以理解的解构赋值

      本文链接:https://www.haomeiwen.com/subject/zdkoictx.html