После сборки и развертывания моего приложения React на моем веб-сервере Apache2.4, каждый раз, когда я пытаюсь получить доступ к ссылке с параметром (например, /verify/:id
), я получаю пустой экран и две ошибки в моей консоли, обе SyntaxError: expected expression, got '<'
(https://i.imgur.com/MM83bU8.png). Этого не происходит, когда я тестирую его локально с помощью npm start
. Оказывается, что оба файла, упомянутые в этой ошибке, не содержат JS, а скорее HTML. Содержимое main [...]. js: https://i.imgur.com/IFGNeJC.png
Обычные ссылки (например, / регистрация, / логин) и т. д. работают как сон.
Я уже пытался обслуживать приложениес пакетом npm serve
.
Моя настройка response-router-dom
import Submit from './Submit'
import Verify from './Verify'
import {BrowserRouter as Router, Route, Switch} from "react-router-dom"
<Router>
<Switch>
[...]
<Route exact path="/jam/submit/" component={Submit} /> // working route
<Route path="/jam/verify/:token" component={Verify} /> // not working route
</Switch>
</Router>
Проверка компонента (Verify.js)
import React, { Component } from 'react'
export default class Verfiy extends Component {
render() {
return(
<div>
<span>{this.props.match.params.token}</span>
</div>
)
}
}
А теперь подведем итог:
Что должно произойти?
Я должен увидеть переданный параметр из /jam/verify/:token
Что на самом деле происходит?
Iполучить пустую страницу и указанные ошибки консоли.
Вы можете проверить это в https://cyklan.de/jam/verify/ThisShouldShowUp