javascript - React Native 控制台日志代理对象

标签 javascript react-native

我正在学习 react-native 教程,但我遇到了一些奇怪的结果。

这是代码

module.exports = React.createClass({
  getInitialState(){
    return({
      tasks: ['Take Course', "Clean house"],
      task: ''
    })
  },
  render() {
    return(
      <View style={styles.container}>
        <Text style={styles.header}>
          ToDoList
        </Text>
        <TextInput
          style = {styles.inputbox}
          placeholder="Type task"
          onChange={(text) => {
            this.setState({task: text});
            console.log(this.state.task);
          }}
        />
      </View>
    )
  }
}) 

我想使用 console.log 打印来自 TextInputtext

这是模拟器。 enter image description here

我原以为它会在 chrome 控制台中打印 112123

但我得到了这个enter image description here

为什么打印这个proxy对象,这个对象是什么?

最佳答案

使用 onChangeText 而不是 onChange。看看https://facebook.github.io/react-native/docs/textinput.html

此外,this.setState 是一个异步调用,这意味着它何时设置状态是不确定的。在这种情况下,您必须调用 console.log 作为回调以确保状态已更改。

this.setState({
   task: text
}, () => {
   console.log(this.state.task)
})

关于javascript - React Native 控制台日志代理对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41210687/

相关文章:

Javascript:请帮助我将此 C 函数转换为 Javascript

javascript - javascript 和 fn 发生了什么?

javascript - 是否可以使用 React Native 来阻止 Android 中的来电?

javascript - 使用 puppeteer 来使用 CSS @media 规则

javascript - 将查询参数从 AJAX get 调用传递到快速路由

javascript - 更新对象列表中的特定属性

javascript - 设置状态后渲染组件未更新

javascript - react native : Strange Issue With Updating State

ios - 手机处于静音模式时,react-native-youtube没有视频声音

javascript - 从成功处理程序中获取结果