Зачем вам подгружать роуты? Вы должны добавить в приложение 6 основных роутов:
/posts
/comments
/albums
/photos
/todos
/users
А конкретные сущности открывать с помощью параметров, например
postId:
<Route path="/post/:postId" component={Post}/>
const Post = ({ match, postsMap }) => {
const post = postsMap[match.params.postId];
return (
<div>
<h1>{post.title}</h1>
<p>{post.body}</p>
</div>
}
Вообще для получения поста из списка постов лучше использовать
selector pattern. Но это выходит за рамки темы вопроса, поэтому пример писать не буду. Но советую посмотреть библиотеку
reselect.
Сам список постов получаем
GET запросом и рендерим с помощью
Link:
<List>
{postsList.map(post => (
<Link to={`/post/${post.id}`} key={post.id}>{post.title}</Link>
))}
</List>