javascript - 如何使用javascript将参数传递给方法?
问题描述
我想将参数传递给名为 checkMessages 的方法。checkMessages 方法在两个地方被调用,一个用 1 个参数调用它,另一个用 2 个参数调用它。
下面是代码,
const checkMessages = (messages, isActive) => {
cy.logout();
changeUser(someuser);
if (isActive) {
cy.getByTestId('toggle').click();
messages.forEach(message =>
cy.get('textarea[id="description"]').type(message)
);
}
messages.forEach(message =>
cy.getTableRow('Description', message)
);
}
checkMessages([
`some message ${item1.name}were added`,
`some message ${item2.name} were added`,
]); // one method call with one argument
checkMessages([
`some message ${item1.name}were added`,
], isActive=true); // second method call with two arguments
//error with this function call
现在的问题是当使用 2 个参数调用 checkMessages 方法时,它会抛出错误“isActive is not defined”
我如何将此参数传递给 checkMessages 方法。函数调用应该如何使用这个参数。
有人可以帮我解决这个问题。谢谢。
解决方案
在您的示例中,您正在传递 isActive = true 。checkMessages
isActive is 属性未在调用范围内定义,因此在调用函数时会引发错误。
您可以通过传递布尔值 true 来调用函数来修复它。
checkMessages([
`some message ${item1.name}were added`,
], true);
推荐阅读
- bash - 使用 Git Bash 在远程服务器上通过 SSH 执行 sudo 命令?
- java - 我可以观看文件/文件夹重命名事件吗?
- java - 是否可以将函数作为枚举构造函数参数?
- docusignapi - DocuSign REST Api 字符串字段限制
- javascript - PHP 数组转换成 JavaScript 数组
- java - 我真的可以信任 LOG4J 时间戳作为生产中的性能指标吗?
- ffmpeg - 使用带有叠加网络摄像头的 ffmpeg 的 kmsgrab 设备记录 Linux Wayland/DRM 屏幕
- html - 不应该在移动菜单上显示的链接,在活动和悬停时
- angular - 如何在单个 index.html 文件中编译角度构建,该文件将从 http get 请求提供
- rust - 函数类型定义可以单独一行而不是内联吗?