Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.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 该函数有几个参数。但是,不要传递所有参数_Javascript_Reactjs - Fatal编程技术网

Javascript 该函数有几个参数。但是,不要传递所有参数

Javascript 该函数有几个参数。但是,不要传递所有参数,javascript,reactjs,Javascript,Reactjs,从“选择”中选择“已完成”、“未完成”或“正在进行”的值。在handleStatus函数中,我调用getDetail函数并将值status=e.target.value传递给它。但是,在getDetail函数incole.log statusreturn meundefined中 代码如下: javascript没有命名参数。此代码表示将e.target.value分配给变量状态,然后将其作为第一个参数传入。在getDetail内部,第一个参数被分配给局部变量查询。没有传入第二个参数,因此在ge

从“选择”中选择“已完成”、“未完成”或“正在进行”的值。在handleStatus函数中,我调用getDetail函数并将值status=e.target.value传递给它。但是,在getDetail函数incole.log statusreturn meundefined中

代码如下:

javascript没有命名参数。此代码表示将e.target.value分配给变量状态,然后将其作为第一个参数传入。在getDetail内部,第一个参数被分配给局部变量查询。没有传入第二个参数,因此在getDetail中,第二个参数未定义。第二个参数可以在本地称为status,但这与函数外部发生的事情无关

如果要将e.target.value作为状态传入,则需要将其作为第二个参数:

this.getDetail(undefined, e.target.value);
出于这个原因,通常会将可选变量放在参数列表的末尾,因此您可以简单地省略它们,而不是填写一个显式的未定义变量

如果要传入大量参数,另一种选择是使用单个参数,即对象。函数中的代码可以检查对象上是否存在属性,调用函数的代码可以随意忽略或包含对象上的属性。例如:

const example = (options) {
  if (options.status) {
    // whatever
  }
  if (options.query) {
    // whatever
  }
}

// To be used like:

example({ query: 'foo', status: 'complete' });
example({ status: 'incomplete' });
example({ query: 'bar' });

您对this.getDetailstatus=e.target.value行的具体意图是什么?@CollinD在this.getDetails中我有两个参数query和status。在这种情况下我只通过身份认证。我想给状态值e.target.values赋值听起来尼古拉斯的回答完全涵盖了你!如果您需要可选的无序参数,另一个选项是使用options对象,this.getDetail{status:e.target.value}@CollinD关于选项对象的好主意;我已经把这一点纳入了我的回答中。
this.getDetail(undefined, e.target.value);
const example = (options) {
  if (options.status) {
    // whatever
  }
  if (options.query) {
    // whatever
  }
}

// To be used like:

example({ query: 'foo', status: 'complete' });
example({ status: 'incomplete' });
example({ query: 'bar' });