在纯 ReactJS(功能)组件中渲染子道具
Rendering children props in pure ReactJS (functional) component
React v0.14支持纯功能组件(即相同的输入等于相同的输出)。props 作为函数参数传入。
// Using ES6 arrow functions and an implicit return:
const PureComponent = ({url}) => (
<div>
<a href={url}>{url}</a>
</div>
);
// Used like this:
<PureComponent url="http://www.google.ca" />
// Renders this:
<a href="http://www.google.ca">http://www.google.ca</a>
但是如何渲染纯组件的子组件呢?在常规有状态组件中,您可以使用this.props.children
访问子组件,但这显然在这里不起作用。
const PureComponent = ({url}) => (
<div>
<a href={url}>{children}</a> // <--- This doesn't work
</div>
);
<PureComponent url="http://www/google.ca">Google Canada</PureComponent>
// I want to render this:
<a href="http://www.google.ca">Google Canada</a>
我该怎么办?
您需要
将children
添加到参数"props"的解构赋值中。
const PureComponent = ({url, children}) => (...)
children
只是传递给组件的道具。 为了像使用props.url
一样使用它,您需要将其添加到该列表中,以便可以将其从 props 对象中"拉出"。
相关文章:
- 拨打'父亲'函数形式a'儿童'ReactJS中的组件
- 如何更改reactjs中外部/独立组件的状态或属性
- 如何在ReactJs中渲染子组件时重新加载子组件的数据
- 在reactjs组件中预加载数据
- ReactJS-在加载时渲染顶级组件
- 组件未使用ReactJS和React Router进行渲染
- ReactJS中未定义组件
- 我不知道如何正确地将REST响应对象传递给ReactJS子组件
- reactjs-redux,是否可以有一个由2个组件使用的状态
- ReactJS组件中显示的视频未更新
- 组件中的ReactJS意外令牌
- 当写入“;函数“;在ReactJS组件中
- 将可重复使用的组件与ReactJs和Flux一起用于多个存储
- ReactJS中的子-父组件通信
- 如何在reactjs中动态加载组件
- 从子窗体组件ReactJS中获取道具
- 可以't重新渲染子组件reactjs
- React 在点击时渲染其他组件.ReactJS中的最优模式
- 正在更新不工作的组件ReactJs
- 父组件多次重新渲染子组件ReactJS