Синтаксическая ошибка: Идентификатор 'App' уже объявлен (11: 7) Больше нигде в файле не размещен - PullRequest
0 голосов
/ 16 января 2020

Я запускал npm, чтобы проверить, как работает школьный проект, над которым я работал. Я получил эту ошибку и прокомментировал везде, где я нашел слово app.

Это ошибка:

Syntax error: Identifier 'App' has already been declared (11:7)

   9 | import { BrowserRouter as Router, Route, Link } from 'react-router-dom';
  10 | 
> 11 | const App = () => (
     |       ^
  12 |     <Router>
  13 |         <div>
  14 |             <ul>

Вот код, связанный в файле его список:

import ReactDOM from 'react-dom';
import './index.css';
import App from './App';
import * as serviceWorker from './serviceWorker';
import About from './screens/About';
import Characters from './screens/Characters';
import Home from './screens/Home';
import { BrowserRouter as Router, Route, Link } from 'react-router-dom';

const App = () => (
    <Router>
        <div>
            <ul>
                <li>
                    <Link to='/'>Home</Link>
                </li>
                <li>
                    <Link to='/about'>About</Link>
                </li>
                <li>
                    <Link to='/characters'>Characters</Link>
                </li>
            </ul>

            <hr />

            <Route exact path="/" component={Home} />
            <Route path="/about" component={About} />
            <Route path="/characters" component={Characters} />
        </div>
    </Router>
);

ReactDOM.render(<App />, document.getElementById('root'));

Я не знаю, что еще попробовать.

У меня был класс с именем app, и я закомментировал его, я не уверен, где еще в моем проекте может быть идентификатор с именем app.

1 Ответ

4 голосов
/ 16 января 2020

Идентификатор App уже объявлен в этой строке: import App from './App'; Я предлагаю изменить имя функции, что-то вроде:

const MyApp = () => (
   ...
);

ReactDOM.render(<MyApp />, document.getElementById('root'));

(Название функции зависит от вас )

...