【问题标题】:Unexpected token, expected in onConfirm in react native意外的令牌,预期在 onConfirm 中反应原生
【发布时间】:2020-04-01 13:33:51
【问题描述】:

我正在尝试在我的 应用

道具

export default class App extends React.Component {  
constructor(props) {
    super(props);
    this.state = {
      cdate: '',
     setDate: '',
     isVisible: false,
     setVisible: false
    };
  }  

源代码

import React, { Component } from "react";
    import {
      View,
      ScrollView,
      DatePickerIOS,
      TouchableOpacity,
      Text,
      TextInput,
      Button,
      StyleSheet
    } from "react-native";
    import RBSheet from "react-native-raw-bottom-sheet";
    import data from "./static.json";

import DateTimePicker from 'react-native-modal-datetime-picker'; 


export default class App extends React.Component {

const { cdate, isVisible, setDate, setVisible } = this.state;

  render() {
    return (
      <View style={styles.container}>
        <Text style={styles.textTitle}>REACT NATIVE RAW BOTTOMSHEET</Text>
        <View style={styles.buttonContainer}>

          <TouchableOpacity onPress={() => this.Scrollable.open()} style={styles.button}>
            <Text style={styles.buttonTitle}>SCROLLABLE</Text>
          </TouchableOpacity>     
        </View>

        {/* Grid Menu */}
        <RBSheet
          ref={ref => {
            this.Scrollable = ref;
          }}
          closeOnDragDown
          customStyles={{
            container: {
              borderTopLeftRadius: 10,
              borderTopRightRadius: 10
            }
          }}
        >
          <ScrollView>
            <View style={styles.gridContainer}>
             <DateTimePicker
  mode="time"
  isVisible={isVisible}
  cdate={cdate}
  onConfirm={cdate => {
    setDate(cdate.toTimeString());
    setVisible(false);
  }}
  onCancel={() => this.setState({ setVisible: false })}
/>
            </View>

          </ScrollView>
        </RBSheet>

      </View>
    );
  }
}
const styles = StyleSheet.create({
  container: {
    flex: 1,
    alignItems: "center",
    backgroundColor: "#F5FCFF"
  },
  textTitle: {
    fontSize: 20,
    marginTop: 120
  },
  buttonContainer: {
    alignItems: "center",
    marginTop: 50
  },
  button: {
    width: 150,
    backgroundColor: "#4EB151",
    paddingVertical: 10,
    alignItems: "center",
    borderRadius: 3,
    margin: 10
  },

});

这是我遇到的错误

它应该是这样工作的

*****更新*****

我收到错误“SyntaxError:\App.js: Unexpected token (21:6)

19 |导出默认类 App 扩展 React.Component { 20 |

21 |常量 { cdate, isVisible, setDate, setVisible } = this.state; | ^ 22 | 23 |渲染() { 24 | return ( at App.js:21:6 " 你能帮忙吗

啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊

【问题讨论】:

  • const { cdate, isVisible, setDate, setVisible } = this.state;这应该在类内
  • 现在工作了吗?
  • @ 我收到错误“SyntaxError:\App.js: Unexpected token (21:6) 19 | export default class App extends React.Component { 20 | > 21 | const { cdate, isVisible, setDate, setVisible } = this.state; | ^ 22 | 23 | render() { 24 | return ( at App.js:21:6 " 你能帮忙吗

标签: reactjs react-native npm


【解决方案1】:

试试这个:

const { cdate, isVisible, setDate, setVisible } = this.state;

<DateTimePicker
  mode="time"
  isVisible={isVisible}
  cdate={cdate}
  onConfirm={cdate => {
    setDate(cdate.toTimeString());
    setVisible(false);
  }}
  onCancel={() => this.setState({ setVisible: false })}
/>

【讨论】:

  • 我试过了,但我得到了这个错误“未定义不是一个对象(评估'_this$state.cDate')”你能帮忙吗
  • 它的 cdate ... 不是 cDate ... 只是您的 var-name 中的一个错字
  • @Hend El-Sahli 它给出了同样的错误“未定义不是对象(评估'_this$state.cdate')”,这次是cdate
  • 请发布您的全班
  • @Venda 你在哪里定义你component state object?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-01
  • 2020-11-15
  • 1970-01-01
  • 2018-09-20
  • 2019-07-11
相关资源
最近更新 更多