简体   繁体   English

语法错误意外令牌,React Native

[英]Syntax Error Unexpected Token, React Native

I have a Login screen.我有一个Login屏幕。 When I press on a blue Text, I want it to navigate to the Register screen.当我按下蓝色文本时,我希望它导航到Register屏幕。 However, it always shows me the same Syntax Error: Unexpected Token .但是,它总是向我显示相同的Syntax Error: Unexpected Token

import React, { Component } from 'react';
import {
  ScrollView,
  Text,
  TextInput,
  View,
  Button
} from 'react-native';
import { StackNavigator } from 'react-navigation';
import Register from './src/screens/Register';

export default class Login extends Component {
static navigationOptions = {
  title: 'Welcome',
}

navigateToRegister = () => {
  this.props.navigation.navigate('Register');
}

render() {
  return (
      <ScrollView style={{padding: 20}}>
          <Text
              style={{fontSize: 27}}>
              Login
          </Text>
          <TextInput placeholder='Username' />
          <TextInput placeholder='Password' />
          <View style={{margin:7}} />
          <Button
                  onPress={this.props.onLoginPress}
                  title="Submit"
              />
          <Text style={{color: 'blue'}}
              onPress={ this._navigateToRegister }
              Register
          </Text>
          </ScrollView>
      );

}
}
const App = StackNavigator({
  Login: { screen: Login },
  Register: { screen: Register },
  Secured: { screen: Secured },
});

AppRegistry.registerComponent('App', () => App);

you have and syntax error in code.你在代码中有语法错误。

second last text is not having closing angle bracket >倒数第二个文本没有右尖括号>

import React, { Component } from "react";
import { ScrollView, Text, TextInput, View, Button } from "react-native";
import { StackNavigator } from "react-navigation";
import Register from "./src/screens/Register";

export default class Login extends Component {
  static navigationOptions = {
    title: "Welcome"
  };

  navigateToRegister = () => {
    this.props.navigation.navigate("Register");
  };

  render() {
    return (
      <ScrollView style={{ padding: 20 }}>
        <Text style={{ fontSize: 27 }}>Login</Text>
        <TextInput placeholder="Username" />
        <TextInput placeholder="Password" />
        <View style={{ margin: 7 }} />
        <Button onPress={this.props.onLoginPress} title="Submit" />
        <Text
          style={{ color: "blue" }}
          onPress={this._navigateToRegister}
          Register
        />
      </ScrollView>
    );
  }
}
const App = StackNavigator({
  Login: { screen: Login },
  Register: { screen: Register },
  Secured: { screen: Secured }
});

AppRegistry.registerComponent("App", () => App);

you can setup prettier and eslint they will provide you syntax error straight white editing code so that you don't need to waist time on finding this kinda errors.你可以设置 prettier 和 eslint,它们会为你提供语法错误的纯白色编辑代码,这样你就不需要花时间去发现这种错误。 This is good guide to setup everything 这是设置一切的好指南

I have encountered to mistakes in your code我在你的代码中遇到了错误

  1. You have used this._navigateToRegister function in onPress and defined navigateToRegister as a function.您已经在 onPress 中使用了 this._navigateToRegister 函数,并将navigateToRegister 定义为一个函数。

  2. And you forgot to close Text tag而你忘了关闭 Text 标签

 <Text style={{ color: "blue" }} nPress={this._navigateToRegister}>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM