React-Native 基础二 使用Props实现传参定制

参考文档:http://reactnative.cn/docs/next/props.html#content
根据我蹩脚的英文水平来看,Props来源于英文单词Property有属性的意思(Props作为一个完整单词来看译为支柱,不合语境)。

官方库提供的props
下面以Image为例,这里的source和style就是props.<Image source={pic} style={{width: 193,height: 110}}中pic外面的{}表示其内部是一个变量或者表达式,任意合法的javascript表达式都可以通过{}嵌入到JSX语句中。

import React,{ Component } from 'react';
import { AppRegistry,Image } from 'react-native';

class Bananas extends Component {
  render() {
    let pic = {
      uri: 'https://upload.wikimedia.org/wikipedia/commons/d/de/Bananavarieties.jpg'
    };
    return (
      <Image source={pic} style={{width: 193,height: 110}} />
    );
  }
}
AppRegistry.registerComponent('Bananas',() => Bananas);

自定义的props

import React,Text,View } from 'react-native';

class Greeting extends Component {
  render() {
    return (
      <Text>Hello {this.props.name}!</Text>
    );
  }
}

class LotsOfGreetings extends Component {
  render() {
    return (
      <View style={{alignItems: 'center'}}>
        <Greeting name='Rexxar' />
        <Greeting name='Jaina' />
        <Greeting name='Valeera' />
      </View>
    );
  }
}

AppRegistry.registerComponent('LotsOfGreetings',() => LotsOfGreetings);

上述代码中即定制了名为name的props

相关文章

react 中的高阶组件主要是对于 hooks 之前的类组件来说的,如...
我们上一节了解了组件的更新机制,但是只是停留在表层上,例...
我们上一节了解了 react 的虚拟 dom 的格式,如何把虚拟 dom...
react 本身提供了克隆组件的方法,但是平时开发中可能很少使...
mobx 是一个简单可扩展的状态管理库,中文官网链接。小编在接...
我们在平常的开发中不可避免的会有很多列表渲染逻辑,在 pc ...