【发布时间】:2021-03-08 22:26:12
【问题描述】:
我正在尝试创建一个反应应用程序,该应用程序在快速服务器中调用 api 并显示数据。用户可以按下一些按钮,这些按钮的值将被传递到 api 并显示正确的结果。
我的问题是将按钮值从反应传递到表达。我试过 req.params.query 但它返回未定义。请注意,按钮值来自不同的组件。
App.js
class App extends Component {
state = {
data: {},
};
search = async (query) => { <-- query returns button value
fetch('/api')
.then((res) => res.json())
.then((data) => console.log(data)); // console log for now
};
render() {
const {data} = this.state;
return (
<div>
<div className={styles.container}>
<Tables data={data} />
</div>
</div>
);
}
}
server.js
const url = GET_CHANNEL_ID + 'hard coded result' + API_KEY;
app.get('/api', async (req, res) => {
console.log(req.params.query); <-- undefined
request(url, (error, response, body) => { <-- this works fine
if (!error && response.statusCode == 200) {
var info = JSON.parse(body);
res.send(info.items[0]);
console.log(info);
}
});
});
【问题讨论】: