javascript - reactjs中如何使用jquery ajax
问题描述
我想在 reactjs 中使用 jquery ajax。但它返回不能发布insert.php。另一个问题是我如何访问 this.state 对象和 this.setSate 成功?
class Name extends React.Component{
constructor(){
super();
this.state={name:''}
}
btnClick=()=>{
$.ajax({
url:'insert.php',
type:'POST',
dataType:'json',
data: JSON.stringify({me:'Hamid'}),
success:function (data,status ,xhr) {
alert(data.name)
}
})
}
render() {
return(
<div><span>{this.state.name}</span>
<button type='button' onClick={this.btnClick}>show</button>
</div>
)
}
}
ReactDOM.render(<Name/>,document.getElementById('root1'));
解决方案
如果您正确导入了 jquery,它应该与 React 中的任何异步 http 调用相同:
btnClick=()=>{
$.ajax({
url:'insert.php',
type:'POST',
dataType:'json',
data: JSON.stringify({me:'Hamid'}),
success: (data,status ,xhr) => {
this.setState({ name: data.name });
}
})
推荐阅读
- javascript - 我可以在 redux 状态下传递简单的数组吗?
- content-management-system - 如何在没有 CMS 的情况下在 Netsuite (SCA) 中添加登录页面
- swift - 在 swift 中使用 stride 的优势
- algorithm - 两个连通图的并集的属性,如果它们的交集不连通
- reactjs - React 组件,npm install 在 npm 链接工作时抛出错误
- asp.net - WebCore 我不能使用实体框架从数据库生成模型
- apache-spark - 如何使用 PySpark 为 kafka 流制作数据帧?
- c - 如何在交叉编译器环境中检测 libc 名称和版本?
- html - bootstrap 4轮播调整图像大小
- mysql - mysqli 查询需要门户中的 2 个参数