js и использую react-router-dom.
Скажем, у меня есть 2 файла - 1. dashboard.js файл
import React, { Component } from 'react';
import {Switch, Route, Link} from 'react-router-dom';
import WYSIWYG from './editor/wysiwyg';
export default class Dashboard extends Component{
render(){
return(
<div className = "wrapper">
<Switch>
<Route exact path = "/wysiwyg" component = {WYSIWYG}/>
</Switch>
<ul id = "DASHBOARD-MENU">
<li><Link to = {{ pathname: '/wysiwyg'}}>WYSIWYG</Link></li>
</ul>
</div>
);
}
}
Note the
ulwithid = "DASHBOARD-MENU"above
2-й - файл wysiwyg.js
import React, { Component } from 'react';
export default class Wysiwyg extends Component{
render(){
return(
<div id = "WYSIWYG-CONTAINER">
</div>
);
}
}
Note the
divwithid = "WYSIWYG-CONTAINER"in the above snippet
После перенаправления в контейнер WYSIWYG с моего dashboard я все еще вижу - <ul id = "DASHBOARD-MENU" .. отрендерил ниже<div id = "WYSIWYG-CONTAINER ...
То, что я понял - - это компонент WYSIWYG, который заменяет <Route, объявленный в моем файле dashboard.js.
Я не хочу, чтобы элемент "DASHBOARD-MENU" отображался на моей странице "WYSIWYG".
Является ли это возможным?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Желаемое поведение может быть получено, если рассматривать оба как разные маршруты и, следовательно, отображать только один из них в зависимости от пути:
import React, { Component } from 'react';
import {Switch, Route, Link} from 'react-router-dom';
import WYSIWYG from './editor/wysiwyg';
const Dashboard = () => (
<ul id = "DASHBOARD-MENU">
<li><Link to = {{ pathname: '/wysiwyg'}}>WYSIWYG</Link></li>
</ul>
);
export default class Dashboard extends Component{
render(){
return(
<div className = "wrapper">
<Switch>
<Route exact path = "/" component = {Dashboard} />
<Route exact path = "/wysiwyg" component = {WYSIWYG}/>
</Switch>
</div>
);
}
}
Вот как работает RR. Если вы не хотите, чтобы отображалось меню приборной панели, вы должны поместить его в другой маршрут внутри
Switch. Получающий ? Ваша часть То, что я понял верна .. опораcomponentзаменяет<Route>, если она совпадает. Остальные остаются такими же