3-1 this.text 不需要在state设置就可以直接使用吗?

来源:5-1 Popular(最热)模块的数据层设计

雪挽

2017-06-17

使用this.text为什么不需要在构造方法里(constructor)中this.state({

text:''

})

初始化。

在例子中直接this.text=text使用了

就是这一块显示结果的时候 使用变量用了:

this.state={
result:''
}
}
<Text style={{height:500}}>{this.state.result}</Text>

可设置变量text时 

onChangeText={text=>this.text=text}

一个this.text就创建了一个text变量,并且在这一行使用

let url=this.genUrl(this.text);

为什么text没有初始化?为什么不需要在state里定义?直接this.text就可以了?

写回答

1回答

CrazyCodeBoy

2017-06-19

state是react的状态机,this.text是组件的变量,state中的变量需要初始化才能使用,this.text在用到的时候初始化也是可以的。

当变量的改变需要立即渲染界面或触发某个动作时需要用到state,如果只是单纯的存储变量用this.text的方式就可以了。

0
1
雪挽
谢谢 老师~
2017-06-19
共1条回复

React Native技术精讲与高质量上线App开发

一个真实的上线项目,一次完整的开发过程,全面掌握React Native技术

1577 学习 · 727 问题

查看课程