Как найти ошибку («Неожиданный токен») в React.js? - PullRequest
0 голосов
/ 15 ноября 2018

Я добился большого прогресса, и внезапно все сломалось.Я получаю следующее сообщение об ошибке в своем браузере:

./src/PokedexSelector.js
Syntax error: Unexpected token (48:9)

  46 |   
  47 | 
> 48 |   export default PokedexSelector;
     |          ^
  49 | 

Это не имеет никакого смысла для меня, поскольку я пытался изменить многие вещи в коде и искать недостающие фигурные скобки и т. Д., Но не могу определитьисточник неприятностей.Даже когда я что-то меняю, ошибка просто прыгает.Например, если я удаляю последнюю строку и обновляю, я получаю это:

./src/PokedexSelector.js
Syntax error: Unexpected token (46:0)

  44 |     )
  45 |   }
> 46 | 
     | ^

... не имеет никакого смысла для меня.

Вот весь файл:

import React, { Component } from 'react';
import { capitalize } from './HelperFunctions';

class PokedexSelector extends Component {
  constructor(props) {
    super(props);
    this.state = {value: "National", pokedexes: []};

    this.handleChange = this.handleChange.bind(this);
    this.generatePokedexList = this.generatePokedexList.bind(this);
  }

  handleChange(event) {
    this.setState({value: event.target.value});
  }

  generatePokedexList() {
    const pokedexes = this.state.pokedexes;
    fetch("https://pokeapi.co/api/v2/pokedex/")
    .then(response => response.json())
    .then(myJson => {
      let results = myJson["results"];
      results.forEach(function(pokedex) {
        let pokedexName = pokedex["name"];
        let pokedexLink = "https://pokeapi.co/api/v2/pokedex/" + pokedexName;
        let pokedexDisplayName = capitalize(pokedexName.replace('-',' '));
        pokedexes.push(
          {
            name: pokedexName,
            "displayName": pokedexDisplayName,
            "link": pokedexLink
          }
        );
      });
    })
  }

  render() {
    this.generatePokedexList();
    return (
      <select id="pokedex-selector" value={this.state.value} onChange={this.handleChange()}>
        <option> {capitalize(this.state.value)} </option>
      </select>
    )
  }


  export default PokedexSelector;

1 Ответ

0 голосов
/ 15 ноября 2018

Добавьте "}" после рендера.Класс все еще открыт.

...