包括和要求在傀儡之间有什么区别

我有一个傀儡class,如果我有以下代码:

class A { require B .... } 

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

 class A { include B .... } 

一切正常

事实上,他们是完全不同的东西。 如果require B意味着A必须在B之前(因此,如果B某些事情require A ,则可能导致循环依赖)。 如果B不包括在内,则会导致缺less依赖性错误。

另一方面, include B只是说,只要A被应用, B就会被应用:它没有说明它们之间的顺序。

这只是在傀儡邮寄名单上被问及(并回答):

当需要应用目录时,差异是显而易见的。 包含你在包含的时候已经评估了它的内容 – 但是任何资源都必须在include之后明确的依赖。 有了需求 – 为您创build了依赖关系 – 但是您必须小心并确保这是您期望的结果

肯·理发师在需求vs包括?