gpt4 book ai didi

javascript - 我的 react 应用程序中的 "' 默认参数 ' is not defined"

转载 作者:行者123 更新时间:2023-12-01 02:03:01 28 4
gpt4 key购买 nike

我将尝试发布此内容,而无需分享我构建的 React 组件的 1500 行代码。这是我的组件的一般结构,与其他组件一样:

import React, { Component } from 'react';
import d3 from "d3";

class presComponent extends Component {

constructor(props) {
super(props);
this.state = { ... }
}

someHelperFunction(paramA="blue", paramB="red") { ... }

componentDidMount() {
this.someHelperFunction(paramA="blue", paramB="red")
}

render() {
...

在构造函数之后,我有许多用于组织代码的函数,这些函数在生命周期方法中调用(大多数情况下是 DidMount 和 DidUpdate)。我的一些辅助函数具有默认参数,在本例中,someHelperFunction 具有参数 paramA 和 paramB,默认值为蓝色和红色。

该组件是一个演示组件,我从一个主要容器组件中调用它。当我这样做时,我收到以下错误:

Line 1735:  'paramA' is not defined       no-undef
Line 1735: 'paramB' is not defined no-undef

我的代码中的第1735行是对componentDidMount内部函数的调用,因此以下行:

this.someHelperFunction(paramA="blue", paramB="red")

为什么会这样。尽管在我的示例中我将参数值设置为其默认值,但即使我不使用默认值,我也会收到此错误。感谢这里的任何帮助,感觉我不明白 javascript/react 中函数的默认参数的使用。

谢谢!

最佳答案

this.someHelperFunction(paramA="blue", paramB="red")

这做了三件事

  1. 将“blue”分配给 paramA(在调用上下文中,与函数中的参数名称无关)
  2. 将“red”分配给 paramB(在调用上下文中,与函数中的参数名称无关)
  3. 使用参数“blue”和“red”调用函数

现在,如果您处于严格模式,paramAparamB 需要是现有变量才不会收到警告/错误 - 再次,这个 实例paramAparamB 与函数中的参数名称完全无关

你也可以拥有

someHelperFunction(paramA="blue", paramB="red") { ... }

this.someHelperFunction(someRandomWord="blue", anotherRandomWord="red")

并且您会遇到相同的错误(除了错误会说 someRandomWordanotherRandomWord 未定义

关于javascript - 我的 react 应用程序中的 "' 默认参数 ' is not defined",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50383750/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com