Как мне использовать response-static для построения маршрутов, которые не имеют никакого отношения друг к другу? - PullRequest
0 голосов
/ 03 января 2019

Я использую реагирующую статику (https://github.com/nozzle/react-static)) для создания в основном статических сайтов, которые имеют какой-то динамический контент после рендеринга. До сих пор он работал очень хорошо и достиг моей цели.

У меня есть вопрос о настройке файла project / static.config для наилучшего удовлетворения моих потребностей. У нас есть тысячи сайтов, позволяющих называть их «событиями», которые предоставляются пользователям, когда они запрашивают URL определенного события. Эти события не имеют никакого отношения друг к другу или какому-либо родительскому сайту, поэтому при вводе URL-адреса события и его загрузки пользователь никогда не уйдет со страницы этого события.

Вот как выглядит мой getRoutes ():

getRoutes: async () => { const { data: events } = await axios.post(api + '/mobile/events-list', { offset: 1 }) return [ { path: '/', getData: () => ({ events, }), children: events.map(event => ({ path: / с / $ {event.ID} , component: 'src/containers/EventRoute', localProps: {event}, getData: () => ({ event, }), })) }, { path: '/404', component: 'src/404', }, ] }

Мне нужно включить корневой путь, который получает события, и свойство children, чтобы построить страницу каждого события.

Мои вопросы:

  • При запуске npm run build файлы index.html / routeInfo.json создаются на корневом уровне с данными по каждому событию. Эти файлы становятся больше с большим количеством событий. Я удаляю эти файлы после сборки, и каждое событие все еще загружается / работает без этих родительских файлов. Это нормально / есть лучший способ настроить файл static.config, чтобы эти файлы вообще не создавались?
  • Имеет ли это решение смысл с response-static или я должен создать каждую страницу события как свой собственный сайт со своим собственным родительским каталогом / js-файлами? Поэтому потенциально может существовать внешний скрипт, который изменяет static.config для каждого события и запускает npm start build для каждого события. Пока что мой пример, кажется, работает, так что это скорее вопрос лучшей практики.
...