[英]ruby passing the value of a hash to a method
我是紅寶石的新手,但我正在使用watir-webdriver對其進行試驗。 我試圖弄清楚如何將哈希值傳遞給這樣的方法:
#this is a hash in ruby - a collection of keys and values
title = { :Mr => "Mr", :Mrs => "Mrs", :Miss => "Miss", :Ms => "Ms", :Other = > "Other"}
def select_title(title)
@browser.element(:xpath => "//input[@type='radio'][@value='Value of title hash']").click
end
我不想編寫if if else或在方法內部進行邏輯切換,只是將哈希值直接傳遞給xpath? 怎么樣?
如果我對問題的理解正確,那么您可以執行以下操作:
def select_title(title_hash_key)
@browser.element(:xpath => "//...[@value='#{title[title_hash_key]}']")
.click
end
現在,當將哈希鍵作為參數傳遞給此方法時,將從哈希值中獲取相應的值,並使用字符串插值( #{title[title_hash_key]}
)將其放入xpath
字符串中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.