2016-02-02 5 views
7

Я хотел бы получить текущие параметры вне компонента, и, насколько я могу судить, React Router не обеспечивает удобный способ сделать это.Получить параметры вне компонента

Когда-то перед 0.13 маршрутизатор имел getCurrentParams(), который я использовал.

Теперь самое лучшее, что я могу понять:

// Copy and past contents of PatternUtils into my project 
var PatternUtils = require('<copy of PatternUtils.js>') 

const { remainingPathname, paramNames, paramValues } = 
    PatternUtils.matchPattern(
     "<copy of path pattern with params I am interested in>",  
    window.location.pathname); 

Есть ли способ сделать это с помощью React маршрутизатор?

+0

открытый вопрос GitHub здесь: https://github.com/reactjs/react-router/issues/2547 – nhjk

ответ

0

можно использовать matchPath:

import { matchPath } from 'react-router' 

const { params }= matchPath(window.location.pathname, { 
    path: "<copy of path pattern with params I am interested in>" 
})