- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是学习 JavaScript 和 React 的 Python 开发人员,我构建了一个简单的 React 应用程序,它使用我创建的 API
。我已经弄清楚如何使用 fetch
从我的 API 中获取 GET
并在应用程序中使用该数据。
但是我一直在尝试从组件中获取表单数据,将其存储为一个名为 request_data
的 object
,然后我将其传递给 submit_task( )
在按钮 onClick
上。
你是怎么做到的?
import React, { Component } from "react";
const ProfileList = ({profiles}) => (
<select>
<option value="-----">----</option>
{profiles.map(profile => <option value={profile.name}>{profile.name}</option>)}
</select>
);
class Submit_job extends Component {
constructor(){
super();
this.state = {
"profiles": [],
};
this.request_data = {}
};
componentDidMount(){
fetch("http://localhost:8000/api/profiles/")
.then(response => response.json())
.then(response => this.setState({ profiles: response}))
}
submit_task(data) {
fetch("http://localhost:8000/api/tasks/",
{
method: "POST",
cache: "no-cache",
headers:{
"content_type": "application/json"
},
body: JSON.stringify(data)
})
.then(response=> response.json())
}
render() {
return (
<div>
<h2>Submit Job</h2>
<form id="submit_job">
<label>
Material ID:
<input type="text" name="material_id"/>
</label>
<br/>
<label>
Transcode Profile:
<ProfileList profiles={this.state.profiles}/>
</label>
<br/>
<label>
Start Date:
<input type="text" name="start_date"/>
</label>
<br/>
<label>
End Date:
<input type="text" name="end_date"/>
</label>
<br/>
</form>
<button onClick={this.submit_task(this.request_data)}>Submit</button>
</div>
);
}
}
export default Submit_job;
最佳答案
在你的表单中
<form id="submit_job" onSubmit={this.onSubmit}>
<label>
Material ID:
<input type="text" name="material_id" onChange={this.handleChange}/>
</label>
<br/>
<label>
Transcode Profile:
<ProfileList profiles={this.state.profiles}/>
</label>
<br/>
<label>
Start Date:
<input type="text" name="start_date" onChange={this.handleChange}/>
</label>
<br/>
<label>
End Date:
<input type="text" name="end_date" onChange={this.handleChange}/>
</label>
<br/>
<button type="submit">Submit</button>
</form>
现在在你的类里面
handleChnage = (e) => {
this.setState({...this.state.request_data, [event.data.target]: event.data.value})
}
onSubmit = () => {
console.log(this.state.request_data) // you should be able to see your form data
}
在你的构造函数中
constructor(){
super();
this.state = {
"profiles": [],
material_id: null,
start_data: null,
end_data: null
};
this.handleChange = this.handleChange.bind(this)
};
关于javascript - React,如何将表单数据发布到 API 端点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49222008/
我一直在开发一个 .NET 字符串格式化库来协助应用程序的本地化。它称为 SmartFormat 并在 GitHub 上开源. 它试图解决的问题之一是 Grammatical Numbers .这也称
leetcode关于单数II的题目是: 给定一个整数数组,除一个元素外,每个元素出现三次。找到那一个。笔记:您的算法应该具有线性运行时复杂度。你能在不使用额外内存的情况下实现它吗? 其实我已经从网站上
我想知道创建/命名模型的首选方法是什么? 我的应用程序有一个“用户”模型,其中包含用于创建、获取、更新(等)用户记录的所有相关业务逻辑。 在我的一些 Controller 中,我可能想要获取多个“用户
在我的 Mysql 数据库中,我有一个术语列表,例如(首字母大写,大多数时候是复数) Hairdressers Restaurants Beauty Salons Fournitures For Re
如果我决定为我的所有路线名称使用复数形式,但某些资源仅作为一个东西存在,您是否将其保持为单数(更直观)或尊重使用复数的决定并保持这种方式? 我们正在用 PHP 为我们的客户门户网站设计一个新的 API
我可能在做一些愚蠢的事情,但是...... 应用/模型/user.rb: class User 然后,当我导航到 /users/123/totem/new 时,出现错误: ActionView::
您能否澄清一些 Matplotlib 术语: “subplots”(或“subplot”?)这个词是“axes”的同义词吗? “轴”和“轴”的单数/复数是什么? 最佳答案 这确实是一个令人困惑的问题。
我有一个 profile我的应用程序中的模型。我想允许用户通过 /profile 查看他们自己的个人资料,所以我创建了这条路线: resource :profile, :only => :show 我
我是一名优秀的程序员,十分优秀!