Цель: Достигнуть http://localhost:3000/test.html?test=5
Проблема: При запуске в режиме разработки и до сборки, я могу достичь http://localhost:3000/test.html?test=5 очень хорошо. Тем не менее, после запуска команды «build-scripts build», при переходе на http://localhost:3000/test.html?test=5, страница будет перенаправлена на http://localhost:3000/test с кодом состояния 301 «Постоянно перемещено».
App.js
import React from 'react';
import { BrowserRouter as Router, Route, Link } from "react-router-dom";
import Test from "./Test";
function App() {
return (
<React.Fragment>
<Router>
<Route path="*" component={Test} />
</Router>
</React.Fragment>
);
}
export default App;
Test.js
import React, { Component } from 'react';
class Test extends Component {
render() {
return (
<React.Fragment>
<h1>{this.props.location.pathname+this.props.location.search}</h1>
</React.Fragment>
);
}
}
export default Test;
Я считаю, что это как-то связано с URL-адресом, содержащим «.html?». Когда я пытаюсь перейти к 'http://localhost:3000/test.html/test=5',, он работает просто отлично, но как только вы попробуете' http://localhost:3000/test.html?test=5',, он будет перенаправлен на 'http://localhost:3000/test'
. Я создал демопроблема, если кто-то хочет проверить это. Демо