Jquery React:使用Ajax调用第三方API(Behance)
但是,我正在尝试使用Behance API根据搜索栏中键入的关键字获取列表项目。。在搜索栏上提交输入后,我不断收到此错误:Jquery React:使用Ajax调用第三方API(Behance),jquery,reactjs,Jquery,Reactjs,但是,我正在尝试使用Behance API根据搜索栏中键入的关键字获取列表项目。。在搜索栏上提交输入后,我不断收到此错误: BeSearchContainer.js:35未捕获类型错误:无法读取未定义的属性“done” 我的onSubmit函数: // triggered whenever the user submits the Search form onSubmitQuery(e) { e.preventDefault() let component =
BeSearchContainer.js:35未捕获类型错误:无法读取未定义的属性“done”
我的onSubmit函数:
// triggered whenever the user submits the Search form
onSubmitQuery(e) {
e.preventDefault()
let component = this
// my error is from this next line..
queryBehance(this.state.query).done( data => {
component.setState({
query: '',
hasSearched: !component.state.hasSearched,
projects: data,
})
})
}
import $ from 'jquery'
export function queryBehance(query) {
var term = query.replace(/\s/, "+");
var url = "https://www.behance.net/v2/projects?
client_id={client_id}&field=" + term;
return
$.ajax({
url: url,
type: "get",
data: {projects: {}},
dataType: "jsonp",
}).done((response) => {
console.log(response);
return response["projects"]
}).fail(() => {
console.log("Ajax request fails")
})
};
My$.ajax函数:
// triggered whenever the user submits the Search form
onSubmitQuery(e) {
e.preventDefault()
let component = this
// my error is from this next line..
queryBehance(this.state.query).done( data => {
component.setState({
query: '',
hasSearched: !component.state.hasSearched,
projects: data,
})
})
}
import $ from 'jquery'
export function queryBehance(query) {
var term = query.replace(/\s/, "+");
var url = "https://www.behance.net/v2/projects?
client_id={client_id}&field=" + term;
return
$.ajax({
url: url,
type: "get",
data: {projects: {}},
dataType: "jsonp",
}).done((response) => {
console.log(response);
return response["projects"]
}).fail(() => {
console.log("Ajax request fails")
})
};
我是否需要调整我的Ajax方法,或者这是我的
onSubmitQuery
函数的语法错误?请原谅我的知识缺乏,因为我是一个非常新的反应:)任何建议将不胜感激 如果您的代码完全按照您在问题中粘贴的方式编写,则您的queryBehance
函数在return
关键字之后会出现错误。将$.ajax
移动到与return
相同的行:
import $ from 'jquery'
export function queryBehance(query) {
var term = query.replace(/\s/, "+");
var url = "https://www.behance.net/v2/projects?
client_id={client_id}&field=" + term;
return $.ajax({
url: url,
type: "get",
data: {projects: {}},
dataType: "jsonp",
}).done((response) => {
console.log(response);
return response["projects"]
}).fail(() => {
console.log("Ajax request fails")
})
};
如果您的代码完全按照您在问题中粘贴的方式编写,则您的
queryBehance
函数在return
关键字后出现错误。将$.ajax
移动到与return
相同的行:
import $ from 'jquery'
export function queryBehance(query) {
var term = query.replace(/\s/, "+");
var url = "https://www.behance.net/v2/projects?
client_id={client_id}&field=" + term;
return $.ajax({
url: url,
type: "get",
data: {projects: {}},
dataType: "jsonp",
}).done((response) => {
console.log(response);
return response["projects"]
}).fail(() => {
console.log("Ajax request fails")
})
};
请求是否正确发送?如何导入
queryBehance
?您好@RossAllen这是导入代码:import{queryBehance}from./BeUtils'
请求是否正确发送?您如何导入queryBehance
?您好@RossAllen这是导入代码:import{queryBehance}from./BeUtils'