代码之家  ›  专栏  ›  技术社区  ›  Steve Staple

如何让柏树处理可见元素?

  •  0
  • Steve Staple  · 技术社区  · 7 年前

    我尝试使用这个元素:

    cy.get('[data-cy-component=single-picker-search] input').type('Live');
    

    当我运行它时,它告诉我有超过1个,所以它不能做到。

    我试着加上力:真的-没什么区别。

    我尝试查看每个元素,但如果元素不可见,则此操作失败:

    cy.get(singlePickerSearch).each(($el) => {
              cy.wrap($el)
                .type('Live' + '{enter}');
            });
    

    如何使它只在元素可见的地方输入?我不想在这件事上失败。

    1 回复  |  直到 7 年前
        1
  •  2
  •   Przemyslaw Jan Beigert    7 年前

    知道了。可以使用伪选择器 :visible 所以你能做到

    cy.get('[data-cy-component=single-picker-search] input:visible').type(...)
    

    或者,如果不止一个可见,则选择第一个可见输入

    cy.get('[data-cy-component=single-picker-search] input:visible').first().type(...)