我反应/减少相对较新,我遇到了问题。
比如说我想搜索一个项目。
export default function getSearchItems(itemName) {
return dispatch => {
// Show that it is requesting, will be updated after.
dispatch(requestItems(itemName));
// URL todo.
return fetch('/search')
.then(
response => response.json(),
error => dispatch(requestItemsFailure(itemName))
).then(
json => dispatch(requestItemsSuccess(itemName, json))
);
};
}
我在这里向网址/搜索发出了请求。但是因为我选择使用React Router v4的客户端路由,所以我在服务器端做了这个。
// Manage Routes
app.get('/*', function (req, res) {
res.sendFile(path.resolve(__dirname + '/../build/index.html'));
});
// Search Grab data
app.get('/search', function (req, res) {
console.log('hit');
res.status(200).json(
{item:"test"}
);
});
因为我使用了#34; catch-all"这里描述的方法in this stackoverflow post,我再也不能做像" / login"并让它立即转到正确的组件。
如何让两者正常合作?