React Native:发现默认参数children【特殊的prop】

根据react中文网教程:添加交互 -- React 中文文档

其中添加交互的响应事件部分有一段代码

代码如下:

javascript 复制代码
export default function App() {
  return (
    <Toolbar
      onPlayMovie={() => alert('Playing!')}
      onUploadImage={() => alert('Uploading!')}
    />
  );
}

function Toolbar({ onPlayMovie, onUploadImage }) {
  return (
    <div>
      <Button onClick={onPlayMovie}>
        Play Movie 
      </Button>
      <Button onClick={onUploadImage}>
        Upload Image
      </Button>
    </div>
  );
}

function Button({ onClick, children }) {
  return (
    <button onClick={onClick}>
      {children}
    </button>
  );
}

呈现出来的效果如下:

这段代码有意思的地方就是,函数组件Button明明需要两个声明的参数,但是ToolBar组件嵌套时只传递了一个第一个参数onClick。而第二个函数children竟然默认是组件中的文本内容也许是我大惊小怪,但在其他的编程语言里面确实没见过,这么灵活的设计,不亲自实践或者有教程可以看到应该不容易理解和发现吧。而且这个参数名称只能是children,不能是其它的命名的,我试过时不好使的。

相关推荐
Never_Satisfied5 小时前
在JavaScript / HTML中,line-height是一个CSS属性
javascript·css·html
用户916357440955 小时前
LeetCode热题100——15.三数之和
javascript·算法
skykun5 小时前
都2026年了还在说闭包吗?
javascript
namehu5 小时前
React Native 应用性能分析与优化不完全指南
android·react native·ios
饮水机战神5 小时前
小程序被下架后,我连夜加了个 "安全接口"
前端·javascript
柯南二号5 小时前
【大前端】 TypeScript vs JavaScript:全面对比与实践指南
前端·javascript·typescript
Larry_Yanan6 小时前
QML学习笔记(三十一)QML的Flow定位器
java·前端·javascript·笔记·qt·学习·ui
全栈探索者6 小时前
ReactNative开发实战——ReactNative 开发中的图标管理方案:基于 Iconfont 的自定义图标库实现
react native
拉不动的猪6 小时前
从底层逻辑和实用性来分析ref中的值为什么不能直接引用
前端·javascript·面试