当前位置: 首页 > 知识库问答 >
问题:

在空导航器上使用导航器方法的Geb

云镜
2023-03-14

在http://www.gebish.org/manual/current/API/geb/navigator/navigator.html中,我对navigator API使用的语言有点困惑

在particualr中,我对.isShopping方法感到困惑。

方法文档声明:“如果显示唯一上下文元素,则返回true;对于空导航器,则返回false。不能在多元素导航器上调用。”

问题是,如果我在空导航器上调用。isDisplained(),它不会返回false。相反,它会抛出以下错误:

table: geb.navigator.EmptyNavigator' is not present
at SomePage //This page has a module element called "module"
if(module.table.isDiplayed()){ // module has a navigtor element called table
    //do stuff
}

共有1个答案

伯建安
2023-03-14

这是因为页面上模块上的table元素是必需的元素(这是默认的)。当您试图使用所需的页面元素,但选择器返回空导航器时,geb将抛出该异常。要解决这个问题,您需要告诉geb该模块不是必需的:

class Module{

  static content {
    table(required: false) { /* selector here*/ }
  }
}

现在,当您使用table时,您将获得空的导航器而不是异常。

 类似资料:
  • 导航器(navigator)是显示在主图下方的用来展示所有数据的数据列小图形,它提供对整个图表进行缩放、平移操作。 导航器默认显示的 Highstock 中的第一个数据列,可以使用 series.showInNavigator 来指定指定需要显示在导航器中的数据列 series: [{ showInNavigator: false }, { showInNavigator: tru

  • 我需要一些关于react原生应用程序的社区建议。我是一个全新的人,不理解其中的一些基本区别。 关于反应本地文档创建StackNavigator的示例建议如下:从“反应导航堆栈”导入{createStackNav导航仪}; 我发现很多人使用下面的样式导入{堆栈导航器,Tab导航器}从“反应导航”; 为什么人们使用以上两种不同的风格?哪一个更合适,为什么? react-navigation-stack

  • Navigator React Native 目前有几个内置的导航器组件,一般来说首推 Navigator。它使用 JavaScript 实现了一个导航栈,因此可以跨平台工作,同时也便于定制。 场景(Scene) 将一系列摆放在一个而屏幕中的组件,构成一个场景。 场景简单的来说时一个全屏的 React 组件。与之相对的是单个 Text 、Image 又或者是你自定义的什么组件,仅仅占据页面中的一部

  • Highmaps 支持多种不同方式的地图交互操作,包括缩放、平移、缩放到指定的区域等,所有相关的属性都可以在地图导航器( mapNavigation )中找到。 需要注意的是地图导航器默认是关闭的,这是因为地图导航器可能会影响到网页的导航操作。当用户在地图上滚动鼠标滚轮时,用户可能是需要操作网页的滚动,而当开启了地图导航器,Highmaps 会捕获鼠标滚轮事件,并响应成地图的缩放操作;同样的情况也

  • 请参见黑色导航栏和分组的表格视图垂直细条纹之间的空白?该空间是导航栏的一部分。如果我滚动表格视图,空格将保持在原来的位置。 我需要navigationController框架仅在这个viewController中更短,这样就没有提供的屏幕截图中显示的空白。 (可能与此有关的是一个带有分组tableview的viewController)。。 以下是此视图控制器的唯一其他子视图: 此导航栏在应用程序

  • 使用数据查看器的“导航栏”按钮,可以快捷方便地浏览文档或页。 按钮 描述 添加文档 - 输入一个新的文档。在使用数据查看器的任何时候,点击此按钮来得到一个空白的文档。 删除文档 - 删除一个现有的文档。 应用更改 - 应用已做的更改。 放弃更改 - 移除当前记录的全部编辑。 刷新 - 刷新数据。 停止 - 当从服务器加载大量数据时,停止加载。 第一页 - 移动到第一页。 上一页 - 移动到上一页。