Ruby each.with_index(1) returns error: no block given (yield)
Ruby each.with_index(1) returns error: no block given (yield)
尝试迭代 table 行,跳过第一行。使用 Ruby、Cucumber 和页面对象 gem。
PAGE_CLASS
table(:table_data, id: 'list')
步骤定义
@current_page.table_data_element.each.with_index(1) do |row|
puts row.value
end
收到错误消息:LocalJumpError: no block given (yield)
试试这个
array.drop(1).each do |row|
...
end
这是如何工作的?
drop
跳过n
个元素,这不会修改原数组
each
枚举所有剩余元素
在不修改数组的情况下执行此操作的干净方法是:
array[1..-1].each { |row| }
array[1..-1] 指定数组中的索引范围,从索引 1 开始(因为 0 将是数组中第一个元素的索引)并一直到最后一个索引 (- 1).
编辑:OP 已更新返回的信息不是数组,以下语法应按问题的意图工作:
@current_page.table_data_element.each.with_index(1) do |row, index|
puts row.value
end
这段代码对我有用。
@current_page.table_data_element.each do |row|
if row.text == ''
next
else
row.link_element(text: 'Edit').visible?
end
end
尝试迭代 table 行,跳过第一行。使用 Ruby、Cucumber 和页面对象 gem。
PAGE_CLASS
table(:table_data, id: 'list')
步骤定义
@current_page.table_data_element.each.with_index(1) do |row|
puts row.value
end
收到错误消息:LocalJumpError: no block given (yield)
试试这个
array.drop(1).each do |row|
...
end
这是如何工作的?
drop
跳过n
个元素,这不会修改原数组each
枚举所有剩余元素
在不修改数组的情况下执行此操作的干净方法是:
array[1..-1].each { |row| }
array[1..-1] 指定数组中的索引范围,从索引 1 开始(因为 0 将是数组中第一个元素的索引)并一直到最后一个索引 (- 1).
编辑:OP 已更新返回的信息不是数组,以下语法应按问题的意图工作:
@current_page.table_data_element.each.with_index(1) do |row, index|
puts row.value
end
这段代码对我有用。
@current_page.table_data_element.each do |row|
if row.text == ''
next
else
row.link_element(text: 'Edit').visible?
end
end