13-ReactNative存储数据组件AsyncStorage
======================================================================================
前面章节 React Native 组件状态 state 中我们简单的介绍了下 组件属性 props。
本章节我们将详细介绍 组件属性 props 以及如何将属性状态 state 和属性组件 props 组合在一起使用。
组件的调用者可以通过 属性 将数据传递给组件,然后组件内部可以通过 组件属性 props 来获取调用者传递的数据。
调用者通过属性传递数据
组件内部通过组件属性 props
来获取传递给组件的数据
const SiteNameComponent = (props) => {
return (
{props.name}
)
}
因为数据可以通过属性来传递,组件可以没有状态,不用状态来保存任何中间数据。对于没有状态的组件,我们称之为 表现组件。
因此我们可以将组件分为两大类:
- 容器组件
容器组件是普通的组件,使用 ES6 类 来实现,既包括组件属性,也包含 组件状态。
最重要的是 容器组件有自己的状态和行为处理函数。
- 纯表现组件
纯表现组件只用于展现数据,数据来源可以是写死的固定不变的,也可以是通过属性传递给组件的。
纯表现组件没有自己的内部状态,所有数据都因为外部而变。
容器组件是最普通的组件,使用 ES6 类 来实现,既包括组件属性,也包含组件状态。
使用原则
-
如果一个组件需要更新自己的状态,那么该组件就是容器组件。
-
容器组件有着自己的状态
state
,也可以通过属性props
接收外部的数据来更新自己的状态。 -
如果不需要保存状态,建议不要使用容器组件。
范例
容器组件是最普通的组件, React Native 内置的大部分组件都是容器组件,它们多有一个 state 来保存状态。
前端面试题汇总
JavaScript
性能
linux
前端资料汇总