Как передать значение корневому запросу в реакции-маршрутизатор-реле
Предположим, что у меня есть следующий корневой запрос в ретрансляторе с проектом act-router-relay:
export default {
calc: () => Relay.QL`query queryType ($number: String) { auth (number: $number) }`,
}
Начальная стоимость $number
приходит с сервера как скрытый ввод, и я хочу использовать этот номер в своем первом запросе к серверу. Как я могу пройти $number
на мой запрос, используя текущий API реагировать-маршрутизатор-реле? Это ни queryParam
или же stateParam
,
1 ответ
Вы должны быть в состоянии сделать что-то вроде:
import {createHistory} from 'history';
import React from 'react';
import ReactDOM from 'react-dom';
import {Route, Router} from 'react-router-relay';
import MyComponent from './components/MyComponent';
import MyComponentQueries from './routes/MyComponentQueries';
function addAuthParam(params, route) {
return {
...params,
number: 'SECRET',
};
}
ReactDOM.render(
<Router
history={createHistory()}
createElement={ReactRouterRelay.createElement}>
<Route
component={MyComponent}
path="/thing/:id"
prepareParams={addAuthParam}
queries={MyComponentQueries}
/>
</Router>,
document.getElementById('relay-root')
);
prepareParams
был добавлен в реакции-маршрутизатор-реле в v0.6.2. Приведенный выше синтаксис должен работать для этого или v0.7.0 (текущий выпуск), а также.