我了解require
只加载文件一次,而load
每次加载时都加载它。
在大多数情况下,使用require
似乎更合适。
我的问题是,何时使用load
而不是require
?
答案 0 :(得分:2)
加载文件的全名路径,例如:
load "/path/to/file.rb"
同时,require只会加载文件一次,并且不需要您指定.rb扩展名:
require "/path/to/file"
require "/path/to/file.rb"
建议您在实践中使用require以获得更好的性能,但我已经读过Rails在开发模式下使用load,因此您不必在每次更改时都重新启动服务器。
答案 1 :(得分:1)
我认为答案就在你的问题中。你写道:
“只需要加载文件一次”
那么现在如果更改文件或外部更改文件会发生什么?
使用load
,您将获得在加载期间保持的“状态”。 require
没有。
答案 2 :(得分:1)
如果你需要强制重新加载(一个常见的例子是web服务器或测试服务器)。如果有合理的机会某些代码不会被命中,或者您想要解决应用程序加载时间问题,则应该使用自动加载。你应该在其他时间使用require。