我是react和nextjs的新手,我想在另一个组件(component1)中使用“response”(在父组件的函数中)。
function func1(props) {
function handleSubmit(e) {
e.preventDefault();
var formData = new FormData(e.target);
const form_values = Object.fromEntries(formData);
axios.get(`here is my url`,{
params : form_values,
headers: {
'Content-Type': 'text/html',
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods':'GET',
},
}).then(function (**response**) {
console.log(response.data);
})
.catch(function (error) {
console.error(error);
});
}
return (
<component1 data={**response**} />
)
export default func1;
我不知道什么是最好的解决办法。
1条答案
按热度按时间olmpazwi1#
这可以通过将数据存储在state中来实现,当axios完成时,更新状态变量,并将此状态作为一个属性传递给组件。
例如,如果您的数据是一个数组,则可以使用以下方法:
根据在
component1
中执行的操作,您可能需要在使用数据之前检查它是否为空数组。旁注:像这样设置头文件
Access-Control-Allow-*
就是将它们设置为request
头文件,并且不会绕过CORS。这些头文件必须由服务器在响应中设置。