了解`load`,`require`和`require_relative`之间的区别

凯特琳

我不了解导入库或模块的三种方法之间的区别。据我目前的了解,

load 'file.rb'

会将外部文件的内容导入当前文件,而:

require 'file.rb'

会执行相同的功能,但不会导入已经导入的文件。

require_relative 'file.rb'

与相似require,但是它将加载仅在当前目录中的文件,而require将使用搜索路径$:来查找文件。毫无疑问,我对这三种机制的理解是有缺陷的。有人可以澄清一下吗?

好的

load无论您是否已导入文件,都希望在导入文件时使用。requirerequire_relative仅在尚未导入文件时才使用它。

由此可以得出结论,当导入的文件是分析对象(数据文件)时,使用前者,而后者则用于提供程序中要使用的某些功能(程序,库,框架的一部分)。

虽然require只能处理相对于的路径$:require_relative但扩展名也可以处理相对于当前目录的路径。require_relative是的超集requirerequire可以分配(尽管require_relative是使用编写的require,因此如果require要分配,则必须重写)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Ruby中的require_relative和require有什么区别?

红宝石require_relative

load / require / require_relative如何处理没有文件扩展名的文件?

require_relative是否不提取变量?

“require_relative”中需要多个文件?

链轮之间的区别// = require和browserify-rails require()?

RequireJS:“ requirejs”和“ require”函数之间的区别

“ require(x)”和“ import x”之间的区别

PHP中“ include”和“ require”之间的区别

Elixir:Require和Import之间的区别

红宝石宝石require_relative无法加载此类文件

移动文件后如何不更改require_relative

main:Object的未定义方法`require_relative'(NoMethodError)

require和load分别为“ load”和“ execute”的区别

了解 ~ 和 - 之间的区别

loadfile,require和import之间有什么区别

require()和通过prop或context传递对象之间的区别

猫鼬和require('猫鼬')之间的区别

LazyLoad.js和require.js之间的区别

require,include,require_once和include_once之间的区别?

composer.json中的require和require-dev部分之间有什么区别?

require(__ DIR__。'/file.php')和require('file.php')之间的区别

在可执行文件中使用require_relative时出错

如何修复CLI加载错误:`require_relative':无法加载此类文件-Ruby

require()和新的require()有什么区别?

require和require-dev有什么区别?

Require.js和仅在DOM中创建<script>元素之间有什么区别?

Spring事务中require_new和嵌套传播之间的区别

OCaml中的include,require和open之间有什么区别?