React native 让值数据进入react native中的状态,如何使其工作

React native 让值数据进入react native中的状态,如何使其工作,react-native,React Native,我正在学习React Native,并尝试构建一个简单的“问题和答案”表单。我已经为某些文本设置了一个值,当触发onPress时,它应该将其值设置为状态: import React, { Component } from 'react'; import { View, Text } from 'react-native'; class quest extends Component { state = { question1: ans1, //where ans1 is the

我正在学习React Native,并尝试构建一个简单的“问题和答案”表单。我已经为某些文本设置了一个值,当触发
onPress
时,它应该将其值设置为状态:

import React, { Component } from 'react';
import { View, Text } from 'react-native';

class quest extends Component {
  state = {
    question1: ans1,  //where ans1 is the value onPressed
    question2: ans1,  //where ans3 is the value onPressed
    longitude: 0.3256, //geolocation
    latitude: -0.3589,//geolocation
  }

  onSubmit = () => (
    console.log(this.state)
  )
  render() {
    return (
      <View>
        <text> What kind of ball is this?</text>
        <TouchableHighlight onPress={//get this value}>
          <text> ans1 value='basketball'</text>
        <TouchableHighlight />
        <TouchableHighlight onPress={//get this value}>
          <text> ans2 value='football'</text>
        <TouchableHighlight />
        <TouchableHighlight onPress={//get this value}>
          <text> ans3 value='handball'</text>
        <TouchableHighlight />
        <text> What kind of vehicle is this?</text>
        <TouchableHighlight onPress={//get this value}>
          <text> ans1 value='bike'</text>
        <TouchableHighlight />
        <TouchableHighlight onPress={//get this value}>
          <text> ans2 value='bus'</text>
        <TouchableHighlight />
        <TouchableHighlight onPress={//get this value}>
          <text> ans3 value='train'</text>
        <TouchableHighlight />
        <button title='Submit' onPress={onSubmit} />
      </View>
    )
  }       
}
import React,{Component}来自'React';
从“react native”导入{View,Text};
类quest扩展了组件{
状态={
问题1:ans1,//其中ans1是按下时的值
问题2:ans1,//其中ans3是按下的值
经度:0.3256,//地理位置
纬度:-0.3589,//地理位置
}
onSubmit=()=>(
console.log(this.state)
)
render(){
返回(
这是什么球?
ans1值='basketball'
ans2值=‘足球’
ans3值=‘手球’
这是什么车?
ans1值='bike'
ans2值='bus'
ans3值='train'
)
}       
}

我无法理解你的问题。我想你们是在问如何将文本的价值保存到状态。如果是的话,这就行了

<TouchableHighlight onPress={() => this.setState({question1: 'bike',})}>
    <text> ans1 value='bike'</text>
<TouchableHighlight/>
this.setState({question1:'bike',})}>
ans1值='bike'

我无法理解你的问题。我想你们是在问如何将文本的价值保存到状态。如果是的话,这就行了

<TouchableHighlight onPress={() => this.setState({question1: 'bike',})}>
    <text> ans1 value='bike'</text>
<TouchableHighlight/>
this.setState({question1:'bike',})}>
ans1值='bike'
试试这个:

constructor(props) {
  super(props)

  this.state = {
    question1: '',
    question2: '',
  }
}

render() {
  return (
    <View style={styles.container}>

      <Text style={styles.answers}> What kind of ball is this? </Text>

      <TouchableHighlight onPress={() => this.setState({ question1: 'Basketball' })}>
        <Text> Basketball</Text>
      </TouchableHighlight>
      <TouchableHighlight onPress={() => this.setState({ question1: 'Football' })}>
        <Text> Football</Text>
      </TouchableHighlight>
      <TouchableHighlight onPress={() => this.setState({ question1: 'Volleyball' })}>
        <Text style={styles.answers}> Volleyball</Text>
      </TouchableHighlight>

      <Text style={styles.answers}> What kind of vehicle is this? </Text>

      <TouchableHighlight onPress={() => this.setState({ question2: 'Bike' })}>
        <Text> Bike</Text>
      </TouchableHighlight>
      <TouchableHighlight onPress={() => this.setState({ question2: 'Bus' })}>
        <Text> Bus</Text>
      </TouchableHighlight>
      <TouchableHighlight onPress={() => this.setState({ question2: 'Train' })}>
        <Text style={styles.answers}> Train</Text>
      </TouchableHighlight>

      <Button
        title='Submit'
        onPress={() => console.log(this.state)}
      />

    </View>
  )
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: '#fff',
    marginTop: 50,
    marginLeft: 20
  },
  answers: {
    marginBottom: 15,
  },
})
构造函数(道具){
超级(道具)
此.state={
问题1:“,
问题2:“,
}
}
render(){
返回(
这是什么球?
this.setState({问题1:'篮球'})}>
篮球
this.setState({问题1:'足球'})}>
足球
this.setState({问题1:'排球'})}>
排球
这是什么车?
this.setState({question2:'Bike'})}>
自行车
this.setState({question2:'Bus'})}>
公共汽车
this.setState({question2:'Train'})}>
训练
console.log(this.state)}
/>
)
}
const styles=StyleSheet.create({
容器:{
弹性:1,
背景颜色:“#fff”,
玛金托普:50,
边缘左侧:20
},
答复:{
marginBottom:15,
},
})
试试这个:

constructor(props) {
  super(props)

  this.state = {
    question1: '',
    question2: '',
  }
}

render() {
  return (
    <View style={styles.container}>

      <Text style={styles.answers}> What kind of ball is this? </Text>

      <TouchableHighlight onPress={() => this.setState({ question1: 'Basketball' })}>
        <Text> Basketball</Text>
      </TouchableHighlight>
      <TouchableHighlight onPress={() => this.setState({ question1: 'Football' })}>
        <Text> Football</Text>
      </TouchableHighlight>
      <TouchableHighlight onPress={() => this.setState({ question1: 'Volleyball' })}>
        <Text style={styles.answers}> Volleyball</Text>
      </TouchableHighlight>

      <Text style={styles.answers}> What kind of vehicle is this? </Text>

      <TouchableHighlight onPress={() => this.setState({ question2: 'Bike' })}>
        <Text> Bike</Text>
      </TouchableHighlight>
      <TouchableHighlight onPress={() => this.setState({ question2: 'Bus' })}>
        <Text> Bus</Text>
      </TouchableHighlight>
      <TouchableHighlight onPress={() => this.setState({ question2: 'Train' })}>
        <Text style={styles.answers}> Train</Text>
      </TouchableHighlight>

      <Button
        title='Submit'
        onPress={() => console.log(this.state)}
      />

    </View>
  )
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: '#fff',
    marginTop: 50,
    marginLeft: 20
  },
  answers: {
    marginBottom: 15,
  },
})
构造函数(道具){
超级(道具)
此.state={
问题1:“,
问题2:“,
}
}
render(){
返回(
这是什么球?
this.setState({问题1:'篮球'})}>
篮球
this.setState({问题1:'足球'})}>
足球
this.setState({问题1:'排球'})}>
排球
这是什么车?
this.setState({question2:'Bike'})}>
自行车
this.setState({question2:'Bus'})}>
公共汽车
this.setState({question2:'Train'})}>
训练
console.log(this.state)}
/>
)
}
const styles=StyleSheet.create({
容器:{
弹性:1,
背景颜色:“#fff”,
玛金托普:50,
边缘左侧:20
},
答复:{
marginBottom:15,
},
})

在继续学习React Native之前,请先看看React的官方文档。这个场景可以按照文档的这一部分来解决:另外,正如您将在文档中看到的,您将看到您应该在构造函数中设置初始状态。看一看,感谢您对React官方文档的帮助和推荐。这真的帮了大忙。在继续学习React Native之前,先看看React的官方文档。这个场景可以按照文档的这一部分来解决:另外,正如您将在文档中看到的,您将看到您应该在构造函数中设置初始状态。看一看,感谢您对React官方文档的帮助和推荐。这真的帮了大忙。我感谢你的帮助。谢谢you@Michaeloforiatta如果这解决了你的问题,也许马克可以作为一个答案,那将是非常感谢我的帮助。谢谢you@Michaeloforiatta如果这解决了你的问题,也许马克作为答案,那将是非常感激的。这是我第一次在这里提问,下次我会做得更好。谢谢:)这是我第一次在这里提问,下次我会做得更好。谢谢:)