我是javascript和React的新手,因此是个问题。
我需要从组件内部发布数据。
我正在使用提取API进行POST。这是我的代码。

export function postData(url, sender, media){
  return fetch(url, { headers: { 'Accept': 'application/json', 'Content-Type': 'application/json'},
                      credentials: 'include',
                      method: 'POST',
                      body: JSON.stringify({sender: sender, media: media})
  })
    .then((response) => { return response.json() ;})
    .catch((error) =>{ console.log("Request failed: ", error) ;})

}


在我的组件内部,有两个方法可以从子组件的回调中获取要发布的值。

class MyComponent extends React.Component{

..........
handleClick(sender){
    console.log(data);

  }

  handleSubmit(media){
    console.log(data);
  }
......
render(){
......
passing down handleSubmit and handleClick as props to child
    }
}


如何在组件中以及在何处调用我的postData方法,以及如何传递sendermedia

最佳答案

好吧,clicksubmit是独立的事件,因此,如果要同时传递它们,则必须对事物进行稍微不同的构造。

就调用postData而言,您似乎必须

import { postData } from foo;


...位于MyComponent文件的顶部,因此该功能可用。正确导入postData后,可以在事件处理函数中使用它。

我只是略读了您的fetch,但看起来应该没问题,或者至少很容易调试。



总结:对其进行修复,以便您拥有一个事件处理程序,该事件处理程序将作为参数传递给mediasender。然后,导入postData并在处理程序中调用它。

关于javascript - 在React中发布数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40517098/

10-12 15:49