假设我在一个带有react-router-relay项目的中继中有以下根查询:
export default {
calc: () => Relay.QL`query queryType ($number: String) { auth (number: $number) }`,
}$number的初始值来自服务器,就像一个隐藏的输入,我想在对服务器的第一次查询中使用这个数字。如何使用当前的react-router-relay API将$number传递给我的查询?这既不是queryParam也不是stateParam。
发布于 2015-10-22 06:12:59
您应该能够执行以下操作:
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')
);在v0.6.2中,在react-router-relay中添加了prepareParams。上述语法也应适用于或v0.7.0 (当前版本)。
https://stackoverflow.com/questions/32860822
复制相似问题