Jquery React:使用Ajax调用第三方API(Behance)

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 =

但是,我正在尝试使用Behance API根据搜索栏中键入的关键字获取列表项目。。在搜索栏上提交输入后,我不断收到此错误:


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'