2016-05-31 3 views
0

У меня есть путь /me с подпунктом :subcategory. В логике моего обработчика, когда указатель subcategory не установлен, должно отображаться содержимое по умолчанию, но при использовании url /me я получаю эту ошибку: Инвариантное нарушение: отсутствует параметр «подкатегория» для пути «/ me /: подкатегория»Инвариантное нарушение: Отсутствует параметр для пути

<Route path="me"> 
    <Route handler={Me} name="me" path=":subcategory" /> 
</Route> 

Что я делаю неправильно? Указание обработчика для обоих маршрутов не имело никакого значения.

ответ

0

Сначала я подумал, что что-то не так с моей <Route> определения, поэтому, после того, как без необходимости длительных исследований через Интернет, потому что на самом деле нет никакой информации об этом легко нашли, я обнаружил, что маршруты являются правильными и что есть два решения.

  1. ВСЕ ссылки требуют параметры необходимо установить (Нету, null не будет работать, глупый программист)
    перед: <Link to='me'>Me</Link>
    после: <Link params={{subcategory: 'app'}} to='me'>Me</Link>
  2. Сделать подконтуром дополнительно -> добавить ?
    <Route handler={Me} name="me" path=":subcategory?" />

Преимущество второго подхода заключается в том, что нет необходимости находить и реорганизовывать ВСЕ старые ссылки, а только логику обработчика.

Смежные вопросы