react native中state和ref的使用
react native中state和ref的使用
因props是只读的,页面中需要交互的情况我们就需要用到state。
一、如何使用state
1:初始化state
第一种方式:
constructor(props) {
super(props)
console.log('_____constructor_____')
this.state = {
count: 0
}
}
render() {
return (
<View>
点击增加 {this.state.count}
</View>
);
}
第二种方式:
state = {
count: 0
}
render() {
return (
<View>
点击增加 {this.state.count}
</View>
);
}
例子:点击增大或减小气球的小例子
import {
Text,
View,
Image
} from 'react-native';
constructor(props) {
super(props)
console.log('_____constructor_____')
this.state = {
size: 40
}
}
render() {
return (
<View>
<Text onPress = {() =>{
this.setState({
size: this.state.size+10
})
}}>
点击增加
</Text>
<Image
style={{width:this.state.size,height:this.state.size}}
source={require('./1.png')}
>
</Image>
<Text onPress = {() =>{
this.setState({
size: this.state.size-10
})
}}>
点击减小
</Text>
</View>
);
}
二、ref的使用
组件中定义ref的值:
<MyComponent ref='myRef'/>
获取ref的值
this.refs.myRef
注意:这里的this.refs.myRef就是组件实例,可以获取到实例的属性和方法
例子:
1:利用ref触发子组件的方法
子组件中定义一个方法:
refFun() {
console.log(123)
}
父组件中调用
<View>
<MyComponent ref='myRef'/>
<Text onPress={() => {
this.refs.myRef.refFun()
}}>点击输出值</Text>
</View>
react native中state和ref的使用的更多相关文章
- React Native中组件的props和state
一.组件的属性(props)和状态(state) 1.属性(props) 它是组件的不可变属性(组件自己不可以自己修改props). 组件自身定义了一组props作为对外提供的接口,展示一个组件时只需 ...
- 在 React Native 中使用 Redux 架构
前言 Redux 架构是 Flux 架构的一个变形,相对于 Flux,Redux 的复杂性相对较低,而且最为巧妙的是 React 应用可以看成由一个根组件连接着许多大大小小的组件的应用,Redux 也 ...
- [RN] React Native中使用 react-native-scrollable-tab-view嵌套在ScrollView里,导致 子内容 在安卓上无法显示
React Native中使用 react-native-scrollable-tab-view嵌套在ScrollView里,导致 子内容 在安卓上无法显示 问题: 0.9.0 或 0.8.0 版本的 ...
- [转] 「指尖上的魔法」 - 谈谈 React Native 中的手势
http://gold.xitu.io/entry/55fa202960b28497519db23f React-Native是一款由Facebook开发并开源的框架,主要卖点是使用JavaScrip ...
- react native中使用echarts
开发平台:mac pro node版本:v8.11.2 npm版本:6.4.1 react-native版本:0.57.8 native-echarts版本:^0.5.0 目标平台:android端收 ...
- 《React Native 精解与实战》书籍连载「React Native 中的生命周期」
此文是我的出版书籍<React Native 精解与实战>连载分享,此书由机械工业出版社出版,书中详解了 React Native 框架底层原理.React Native 组件布局.组件与 ...
- React Native中加载指示器组件ActivityIndicator使用方法
这里讲一下React Native中的一个组件——ActivityIndicator,这是一个加载指示器,俗称菊花,很常见的,效果如下所示: 可以看到图中有两个加载指示器,一大一小,这是尺寸不是我设置 ...
- react native 中的redux 理解
redux 中主要分为三大块,分别是Action Reducer 与Store. 1.Action是js的一个普通对象,是store数据的唯一来源.通过store.dispath()讲action传到 ...
- react native 中的ListView
ListView 的运用: 1.首先在react native中引入这个组件: 2.初始化的ListView 的相关属性: constructor(props) { super(props); con ...
随机推荐
- DBA手记-BBED 的说明
在10g中连接生成bbed:cd $ORACLE_HOME/rdbms/libmake -f ins_rdbms.mk $ORACLE_HOME/rdbms/lib/bbed 11g中缺省未提供BBE ...
- 歌词解析&class
class song_song: def __init__(self,lrc_file): # 定义两个字典一个列表备用 self.song_file = lrc_file self.song_lrc ...
- 使用Mybatis连接到Mysql报错,WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be esta
在Eclipse中使用springboot整合Mybatis,连接到5.7版本Mysql报错WARN: Establishing SSL connection without server's ide ...
- (1)linux和oracle---环境搭建
对linux和oracle一直是敬而远之,稍微有些了解.无奈由于工作需要这次要硬着头皮上了!@#!@@#$%^^ 对于重windows用户的我来说,简直是万种折磨. 算是做个记录吧,一定要坚持下去. ...
- 偏前端 + rsa加解密 + jsencrypt.min.js--(新增超长字符分段加解密)
<html> <head> <title>JavaScript RSA Encryption</title> <meta charset=&quo ...
- less使用
Less在浏览器上使用的方法 <link rel="stylesheet" type="text/less" href="styles.less ...
- java通过get或post方式传到PHP的某控制器的某方法下
[java]package test4;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStr ...
- 一起来学大数据——走进Linux之门,学习大数据的重中之重
昨天我们看了有关大数据Hadoop的一些知识点,但是要在学习大数据之前,我们还是要为大数据的环境做一些的部署. 那么,今天我们就来讲讲开启我们大数据之路的Linux,跟上我们的脚步yo~ Linux介 ...
- 请简述以下两个for 循环的优缺点
今天笔试时候遇到一个问题,找到相似的. ; i<N; i++) { if (condition) DoSomething(); else DoOtherthing(); } if (condit ...
- 改脚本之dbscaner
默认的DBscaner只是用了ipy模块支持一个段的解析,但是我想让他加载脚本进行检测 所以,直接看 def __init__(self, target, thread): self.target = ...