加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

在模块定义之外放置Ruby`require`?

发布时间:2020-12-17 03:40:55 所属栏目:百科 来源:网络整理
导读:在 Ruby中,可以在模块定义之外放置require语句吗? require’d模块是否仍然可以在嵌套在模块中的类中使用? 例如,是这样的: require 'baz'module Foo class Bar # some code using Baz endend 这个一样吗? module Foo require 'baz' class Bar # some code
在 Ruby中,可以在模块定义之外放置require语句吗? require’d模块是否仍然可以在嵌套在模块中的类中使用?

例如,是这样的:

require 'baz'
module Foo
  class Bar
    # some code using Baz
  end
end

这个一样吗?

module Foo
  require 'baz'
  class Bar
    # some code using Baz
  end
end

和这个一样吗?

module Foo
  class Bar
    require 'baz'
    # some code using Baz
  end
end

解决方法

您可以在任何地方提出要求正如您在文档 here中看到的那样,所需文件中的常量和全局变量始终添加到全局命名空间中.最佳做法通常是在任何嵌套之外使用require,但是有些宝石利用了它可以在任何地方有条件地需要基于ruby逻辑的文件的事实,即

if some_boolean
  require 'file'
end

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读