Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/457.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用静态React函数返回的值_Javascript_Reactjs_Callback_Webpack_Ecmascript 6 - Fatal编程技术网

Javascript 使用静态React函数返回的值

Javascript 使用静态React函数返回的值,javascript,reactjs,callback,webpack,ecmascript-6,Javascript,Reactjs,Callback,Webpack,Ecmascript 6,我正在尝试在一个支持javascript Ecmascript 6的React+网页包项目中执行以下操作: class ApiCalls extends React.Component{ static uploadFiles(files) { // upload code if(success) { return(true, message); } else { return(false, message); } } } e

我正在尝试在一个支持javascript Ecmascript 6的React+网页包项目中执行以下操作:

class ApiCalls extends React.Component{
  static uploadFiles(files) {
    // upload code
    if(success) {
      return(true, message);
    }
    else {
      return(false, message);
    }
  }
}
export default ApiCalls;
然后在我的调用组件中,我调用如下方法:

import ApiCalls from './ApiCalls';
class HomePage extends React.Component {
  ...
  handlePost(files) {
    ApiCalls.uploadFiles(files) = ((success, message) => {
      if (success) {
        console.log('Success! ' + message);
      }
      else {
        console.log('Error! ' + message);
      }
    }
  }
  ...
  render()
  ...
}
export default HomePage;
handlePost(files) {
    ApiCalls.uploadFiles(files, (success, message) => {
      if (success) {
        console.log('Success! ' + message);
      }
      else {
        console.log('Error! ' + message);
      }
    })
}
static uploadFiles(files, target) { //target will be that callback function
    // upload code
    if(success) {
      target(true, message);  //call that function and pass the parameter
    }
    else {
      target(false, message);
    }
}
使用上述代码,我得到以下错误:

Invalid left-hand side in assignment expression
箭头指向顶点


我做错了什么?

我认为,您以错误的方式使用了
回调函数
,将函数传递给静态函数,成功后,使用参数调用该函数,如下所示:

import ApiCalls from './ApiCalls';
class HomePage extends React.Component {
  ...
  handlePost(files) {
    ApiCalls.uploadFiles(files) = ((success, message) => {
      if (success) {
        console.log('Success! ' + message);
      }
      else {
        console.log('Error! ' + message);
      }
    }
  }
  ...
  render()
  ...
}
export default HomePage;
handlePost(files) {
    ApiCalls.uploadFiles(files, (success, message) => {
      if (success) {
        console.log('Success! ' + message);
      }
      else {
        console.log('Error! ' + message);
      }
    })
}
static uploadFiles(files, target) { //target will be that callback function
    // upload code
    if(success) {
      target(true, message);  //call that function and pass the parameter
    }
    else {
      target(false, message);
    }
}
现在像这样编写
静态函数

import ApiCalls from './ApiCalls';
class HomePage extends React.Component {
  ...
  handlePost(files) {
    ApiCalls.uploadFiles(files) = ((success, message) => {
      if (success) {
        console.log('Success! ' + message);
      }
      else {
        console.log('Error! ' + message);
      }
    }
  }
  ...
  render()
  ...
}
export default HomePage;
handlePost(files) {
    ApiCalls.uploadFiles(files, (success, message) => {
      if (success) {
        console.log('Success! ' + message);
      }
      else {
        console.log('Error! ' + message);
      }
    })
}
static uploadFiles(files, target) { //target will be that callback function
    // upload code
    if(success) {
      target(true, message);  //call that function and pass the parameter
    }
    else {
      target(false, message);
    }
}

非常感谢你,工作做得很好!帮我省去了很多头痛。顺便问一下,像Apicall那样制作一个没有任何渲染部分的react组件是一种不好的做法,还是正常的做法?我认为,这是一种不好的做法,如果该组件不包含任何ui部分,那么就不要将其制作成
react
组件,只需创建一个包含
函数
的文件,并使用
模块导出所有函数。导出
并根据情况以相同的方式调用
函数:)