我们的在程序中使用各种函数方法就离不开传入参数,那么如何在react native中使用参数呢?下面先来看一个例子
1、系统组件使用参数
我们使用一个图片加载的例子简单看一下参数的使用,代码:
import React, { Component } from 'react';
import { AppRegistry, Image } from 'react-native';
class Image extends Component {
render() {
let pic = {
uri:'https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/l ogo_white_fe6da1ec.png'
};
return (
<Image source={pic} style={{width: 193, height: 110}} />
);
}
}
AppRegistry.registerComponent('Image', () => Image);
这里我们使用到了显示图片的组件 Image,这个和我们的经验是一致的。图片组件主要是声明它的地址,通过source属性指定,不过我们这里并不是直接指定,而是利用一个变量当作参数引用进来,在JSX语法中使用let 来声明一个变量。
在reactnative 中参数称为 props。
2、自定义组件使用参数
import React, { Component } from 'react';
import { AppRegistry, 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);
这里我们自定义了组件Greeting,内部实质内容就是一个 Text ,不过它可以接受一个参数 ,通过 {this.props.name} 的形式,this.props指代程序参数集合,name 指代具体的参数名称,我们在实际使用 Greeting 组件的时候,指定 name 属性,最终就是传入到Text ,将指定的内容拼接上。