Перераспределение компонента без перезагрузки всей страницы - PullRequest
0 голосов
/ 24 мая 2018

У меня есть приложение React + Django, которое представляет собой пользовательский видеоплеер, и в настоящее время я работаю над соответствующим видео / очередью в конце видео.У меня это работает, если я использую простой window.location.replace со ссылкой на следующее видео.Тем не менее, было бы намного проще, только перезагрузить видео плеер.

Из множества потоков, которые я читал на SO, кажется, что это возможно для перенаправления моего "основного" компонента в дочерний компонент в React, но ни один из методов не сработал для меняи у меня немного другой случай, чем все, что я прочитал.Если воспроизведение видео зависит от моего URL-адреса (или маршрута), возможно ли его перезагрузить без повторной визуализации всей страницы?

Ниже приведена базовая версия соответствующего кода:

Index.js:

class Welcome extends React.Component {
    render() {
        return (
            <BrowserRouter>
                <App/>
            </BrowserRouter>
        )
    }
}

const element = <Welcome/>;
ReactDOM.render(
    element,
    document.getElementById('container')
);

App.js:

class App extends React.Component {
    render() {
        return (
            <Row id="app-container" className="h-100 justify-content-center align-items-center">
                <Switch>
                    <Route path='/app/:number' component={Player}/>
                </Switch>
            </Row>
        )
    }
}

export default App

Queue.js, Примечание: этоочевидно, это та часть, с которой у меня проблемы.У меня есть кликабельные imgs для выполнения метода window.location.replace.

<div>
 <Link to='app/1' replace>
  Previous Video
 </Link>
<div>

Link на самом деле меняет URL-адрес так, как я хочу, но не перезагружает приложение.Я потратил много времени, пытаясь реализовать решения этой проблемы из других сообщений SO, но я беспокоюсь, что, как только я его получу, это все равно заставит перезагрузить всю страницу.Может кто-нибудь сказать мне, если это возможно, просто перенаправить мое приложение?Это нормально, если URL-адрес не меняется, если приложение основано на новом маршруте.

Заранее спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...