react native获取到真实的DOM节点

this.state:开发中,组件确定要与用户进行交互,React的一大创新就是将组件当作了一个状态机,一开始有一个初始状态,而后用户交互,致使状态变化,从而触发从新渲染页面html

一、当用户点击组件,致使状态变化,this.setSate方法就修改状态值,每次修改之后,会自动调用this.render方法,再次渲染组件
二、能够把组件当作一个状态机,根据不一样的status有不一样的UI展现,只要使用setState改变状态值,根据diff算法算出有差值后,就会执行ReactDom的render方法,从新渲染界面
this.props和this.state都用于描述组件的特性,区别在于:
this.props表示那些一旦定义,就再也不更改的特性;
this.state是会随着用户交互而产生改变的特性react

获取真实的Dom节点:
一、在React Native中,组件并非真实的DOM节点,而是存在于内存中的一种数据结构,叫虚拟DOM
二、只有当它插入文档后,才会变成真实的DOMweb

在以前的html,JavaScript中须要经过ID,className等来获取,在react native中真实的Dom节点经过ref获取算法

clicking(){
this.setState({
	title:'变化了'
})
//获取topView还有那个Text那个节点:
this.refs.topView
this.refs.event 
}
render() {
        return (
            <View style={styles.container}>
                <View style={styles.top_topContainer} ref="topView">
                   <Image style={styles.Icon} source={require('./imgs/hb.jpg')}/>
			        <TextInput 
			        style={styles.userStyle}
			        placeholder='请输入用户名'
			        clearButtonMode='always' //never 永远不显示删除 always 一直显示  
			        clearTextOnFocus={true}  //获取焦点时是否清空文字 、
			        enablesReturnKeyAutomatically={false}  //是否自动启用回车键,有内容就显示,没有就不启用
			        returnKeyType = 'go'  //回车键上的文字: go前往 join加入 next 下一项 route路线 send 发送 search 搜索 
			        onChangeText={()=>{console.warn('用户名是...')}} //文字修改完从新给state的query赋值
			        />
			        <TextInput 
			        style={styles.userStyle}
			        placeholder='请输入密码'
			        clearButtonMode='always' //never 永远不显示删除 always 一直显示  
			        clearTextOnFocus={true}  //获取焦点时是否清空文字 
			        password={true}
			        enablesReturnKeyAutomatically={false}  //是否自动启用回车键,有内容就显示,没有就不启用
			        returnKeyType = 'go'  //回车键上的文字: go前往 join加入 next 下一项 route路线 send 发送 search 搜索 
			        onChangeText={()=>{console.warn('用户名是...')}} //文字修改完从新给state的query赋值
			        />
                </View>
                <View style={styles.loginStyle}>
            <TouchableOpacity onPress={()=>{this.clicking()}}>
                    <Text style={
  
  
   
   
            
   

  {textAlign:'center'}} ref="event">文章学习</Text>
            </TouchableOpacity>
        </View>
            </View>
        );
    }

ref就能够获取某一个真实的dom节点数据结构

本文同步分享在 博客“zoepriselife316”(CSDN)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。dom

相关文章
相关标签/搜索