javascript - 在 React 中将特定参数传递给具有多个参数的函数

标签 javascript reactjs function

在 React 中,我创建了下面提到的函数:

infoPrint (firstname = '--', middlename = '--', surname = '--')
{
    console.log('Firstname: ', firstname, ', Middle name: ', middlename, ', Surname: ', surname);
}

我在 componentWillMount 中调用这个函数:

componentWillMount() {
    var firstname = 'Naisarg';
    var surname = 'Parmar';
    this.infoPrint(firstname,surname);
}

我得到这个输出:

Firstname: Naisarg, Middle name: Parmar, Surname: --

但我期待这个:

Firstname: Naisarg, Middle name: --, Surname: Parmar

最佳答案

您可以通过传递文字对象作为函数的参数来实现这一点:

class User extends Component {
    componentWillMount() {
        var firstname = 'Naisarg';
        var surname = 'Parmar';
        this.infoPrint({ firstname, surname });
    }

    infoPrint({ firstname = '--', middlename = '--', surname = '--' }) {
        console.log('Firstname: ', firstname, ', Middle name: ', middlename, ', Surname: ', surname);
    }
}

这是一种非常常见的模式,对可选参数有很大帮助。

-

如果您不想使用对象,则必须以正确的顺序传递所有参数:

class User extends Component {
    componentWillMount() {
        var firstname = 'Naisarg';
        var surname = 'Parmar';
        this.infoPrint(firstname, null, surname);
    }

    infoPrint(firstname = '--', middlename = '--', surname = '--') {
        console.log('Firstname: ', firstname, ', Middle name: ', middlename, ', Surname: ', surname);
    }
}

关于javascript - 在 React 中将特定参数传递给具有多个参数的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54338891/

相关文章:

javascript - 链接在新页面加载,而不是 iframe

javascript - 从 json 对象中选择元素

javascript - React 状态对象中的值发生奇怪的变化

c - 在不知道大小的情况下打印数组

python - 我的函数使用 'None'返回了新行

javascript - 如何更可靠地从动态变化的元素中获取变量?

javascript - 如何识别在元素上初始化的 Chosen 插件

javascript - 如何在react中加载自定义prismjs语法文件?

xcode - 如何真正在 React Native 项目中进行团队合作?

python - 如何使用 if、elif 和 else 运行多参数函数?