React Native官网上面关于TextInput的文章
importReact, { Component }from'react';
import{ AppRegistry, Text, TextInput, View }from'react-native';
classPizzaTranslatorextendsComponent{constructor(props) {super(props);this.state = {text:''}; } render() {return( this.setState({text})} /> {this.state.text.split(' ').map((word)=>word &&'🍕').join(' ')} ); }}
//注册应用(registerComponent)后才能正确渲染//注意:只把应用作为一个整体注册一次,而不是每个组件/模块都注册
AppRegistry.registerComponent('PizzaTranslator',()=>PizzaTranslator);
this.state.text.split(' ').map((word)=>word && '🍕').join(' ');
这句话的意思是把text这个字符串按照空格划分成数组,再将数组里面的每一个元素都放到(word)=>word && '🍕'这个函数里面处理,从而得到一个新的数组,再将所有这个新的数组里面的元素按照空格连接起来组成一个新的字符串。
等价于
this.state.text.split(' ').map((word)=>func(word)).join(' ');
function func(word){
if(word)
return '🍕';
return word;
}