我正在构建一个简单的宾果游戏,使用React Native在iOS和Android上完成家务。我是JS的新手,过去有Java和Python的经验,所以我倾向于使用ES6语法,它对前面提到的语言有一些熟悉的结构。
我遇到了一个语法错误,我无法在粘贴到此处的文件中识别该错误(这是该文件的完整代码)。我从这个文件的iOS模拟器中得到的错误是:
意外的令牌,应为;(44:33)
为了更容易理解第44行是什么(我相信(44:33)意味着第44行的字符33),我在Atom中看到第44行如下。
_createPlayerTabs(playerCount) {
我在谷歌、Facebook React Native网站上做了同样多的研究,这里尽可能,但这是非常困难的,因为谷歌不承认分号是合法的搜索令牌:(.我怀疑我犯了某种错误,因为我假设JS的功能像Python或Java,但如果你们能提供任何关于具体错误或我犯的概念错误的帮助,我们将不胜感激。
'use strict'
import React from 'react';
import {
View,
Text,
StyleSheet,
TextInput,
TouchableOpacity,
Picker,
} from 'react-native';
import {
Actions,
} from 'react-native-router-flux';
import {
TabViewAnimated,
TabBarTop,
} from 'react-native-tab-view';
import GlobalStyles from '../../styles/GlobalStyles';
import BingoBoard from '../../components/BingoBoard';
class Player extends React.Component {
constructor(props){
super(props);
this.state = {
index: 0,
routes: this._createPlayerTabs(this.props.players),
};
}
_setupPlayers(playerCount, boardSize, winCondition) {
players = []
for (var x = 1; x <= playerCount; x++) {
tempBoard = new BingoBoard(boardSize, winCondition);
players.push('Player '.concat(x.toString()) : {
name: "",
board: tempBoard,
});
}
_createPlayerTabs(playerCount) {
playerList = [];
for (var x = 1; x <= playerCount; x++) {
playerList.push({
key: x.toString(),
title: "Player ".concat(x.toString()),
});
}
return playerList;
}
_renderScene({ route }) {
return
<View style={[GlobalStyles.container, {paddingTop: 500}]}>
<Text>
{route.title}
</Text>
</View>;
}
_renderHeader(props) {
return <TabBarTop {...props} />;
}
_handleChangeTab = (index) => {
this.setState({ index });
}
render() {
return(
<View style={GlobalStyles.container}>
<TabViewAnimated
style={GlobalStyles.container}
navigationState={this.state}
renderScene={this._renderScene}
renderHeader={this._renderHeader}
onRequestChangeTab={this._handleChangeTab}/>
<View style={GlobalStyles.bottomBar}>
<TouchableOpacity onPress={() => (
Actions.activechore({this.state.players})
)}>
<Text style={GlobalStyles.h2}>
Next
</Text>
</TouchableOpacity>
</View>
</View>
);
}
}
export default Player;
_setupPlayers
中的for
循环缺少其关闭的}
,因此它试图将_createPlayerTabs(playerCount) {
解析为一条语句,但失败了。