人偶中的include和require有什么区别


8

如果我有以下代码,我在人偶中有一个类:

class A {
  require B

....
} 

我收到循环依赖项错误。如果我有:

class A {
  include B

....
} 

一切正常

Answers:


18

实际上,它们是完全不同的东西。说require B手段B必须先于A(因此,如果B结果变成,则可能导致循环依赖require A)。并且,如果B根本不包括它,将导致缺少依赖项错误。

另一方面,include B只要说B将在应用时A应用即可:它没有说出它们之间的顺序。


难道require B实际上不是B必须先出现A吗?
塞巴斯蒂安·克里斯曼斯基

@SebastianKrysmanski嗯,是的。:)
Daniel C. Sobral

10

只是在木偶邮件列表中被询问(并回答了):

当需要应用目录时,差异是显而易见的。使用include时,您已在包含时评估了其内容-但是,包含之后必须显式依赖任何资源。有需求-为您创建了依赖关系-但您必须小心并确保这是您想要的结果

-Ken Barber在Require vs Include中吗?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.