我正在自动创建一个具有不同功能页面的网站。 我正在为每个功能制作不同的模块。 问题是我有一个登录页面 Login.rb 具有以下代码:-
$IE = Watir::IE.new_process
module Login
def Login.login(url)
$IE.goto("url")
sleep (4)
$IE.maximize
#$IE.span(:class =>'menuLink', :text =>'Image').click
end
end
我需要将 $IE 变量访问到我的其他模块方法。 问题是不同 .rb 文件中的其他模块没有采用此变量。 帮助我如何声明它,以便我可以在不同文件的所有模块中使用它。
最佳答案
全局变量应该在所有模块和所有文件中可用。您可以将这个全局变量放在一个名为(例如)common.rb 的文件中,并在您的所有脚本中要求或加载该文件。
但您不需要使用全局变量。您可以像这样轻松地执行此操作并将其加载到您需要的每个脚本文件中。
module Browser
def self.ie
@ie ||= Watir::IE.new_process
end
end
关于ruby - 不同 ruby 文件中的可变范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3598339/