javascript - Protractor :我需要等到组件显示在屏幕上

标签 javascript node.js jasmine protractor

我有一个问题,我需要等到组件显示在屏幕上,有时组件延迟太久无法显示。我需要等到某个字段或变量变为真。有人知道怎么做吗?

element(by.id('nextStage-button')).isPresent().then(function (visible) {
    let i = 0;
    while (visible !== true){
        browser.sleep(2000);
        console.log("test "+ i++);
        if(visible === true){
            break;
        }
    }

最佳答案

考虑使用 Expected Conditions .

你可以这样做:

const EC = protractor.ExpectedConditions;
const nextStageButton = $('#nextStage-button');
browser.wait(EC.visibilityOf(nextStageButton), 3000);
// do whatever you wanted to do once it's visible

关于javascript - Protractor :我需要等到组件显示在屏幕上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51678249/

相关文章:

javascript -/bower_components 不加载页面上的依赖项

javascript - 按键后重置 lodash 去抖

javascript - 如何从文本正文中删除特定元素?

javascript - 引用错误 : Can't find variable: Map

Angular 单元测试 NullInjectorError : R3InjectorError(DynamicTestModule)[MatSnackBarComponent -> MatSnackBarComponent]:

javascript - 如何获取 Web Sql 错误的上下文?

javascript - 如何使用html2canvas在pdf中显示可滚动的所有div内容

javascript - Node.js Web 应用程序中 MySQL 查询的延迟加载

node.js - 如何为任何请求禁用 SSL 验证?

node.js - Jasmine Node - 包括助手