javascript - 无法滚动和双击元素
问题描述
这是我的步骤定义:
async function(string) {
//var wd = browser.driver;
var elm = element.all(by.xpath("//label[.='Phone']/ancestor::span/following-sibling::*/input[@value='98098089']"));
browser.executeScript(elm.getWebElement());
这是我面临的错误:然后用户滚动查看电话值
# E2E\Tests\StepDefinitions\PanelSteps.js:189 错误:函数使用多个异步接口:回调和promise使用回调接口:不返回promise使用promise接口:删除函数的最后一个参数
请帮我调试这个
解决方案
在 javascript 中处理异步行为有几种不同的方法:回调函数、使用 .then() 的承诺和使用 .then() 的承诺async/await
。
Js 将您的参数识别string
为回调函数,但您已经将该函数声明为async
并且这些是冲突的。我猜这是因为你的string
参数没有在你的函数中使用。我会尝试删除它,因为您的函数正在等待触发回调。
更新: 添加示例
async function sampleFunction() {
await browser.driver.sleep(5000);
var elm = element(by.id("WORKPHONE"));
await browser.executeScript("arguments[0].scrollIntoView()", elm.getWebElement());
await elm.click()
}
推荐阅读
- java - android.view.accessibility.AccessibilityNodeInfo.setText 致命异常:java.lang.IndexOutOfBoundsException
- python - Ray 集群配置 file_mounts 部分不允许工作节点启动
- ruby-on-rails - 如何在开发模式下访问加密凭据?
- python - 如何将 FFMPEG 导出到我的 Python 程序中?
- tensorboard - TensorBoard:如何添加电子邮件链接?
- javascript - 如何从此函数中获取 downloadURL?
- .net - grpc中的.net Google.Cloud.Firestore名称解析错误
- sql - 如何获得两条线之间的差异
- excel - Copy data to sheet named in column header and cell named at beginning of row, then loop
- angular - 根据剑道菜单中的服务数据在新选项卡中打开 url