emberjs mixin vs extend



我正在考虑在我的项目中使用造船厂验证

我有选项如何使用Validations-Mixin从船坞

  • 方法1有一个BaseController,它将混合这个Validations-Mixin并获得所有控制器的功能

  • 方法2直接使用Mixin

优点1不需要在每个文件中导入成员验证和手动混合,并且我在所有控制器中都获得了验证的功能。

缺点1验证可能不是在所有的控制器中都需要,可能只有在50%的情况下才需要,也可能会重新排序现有控制器添加mixins的方式。

优点2很简单,只有需要这个功能的人才会导入和使用它。

2 .

缺点在需要的地方导入每个文件并添加mixin.

我认为你应该直接使用这个mixin。为什么?

因为没有必要在应用程序中的每个控制器中扩展它。扩展mixins是在共享功能的控制器之间获得共享功能的一种方法。我很确定不是应用程序中的每个控制器都需要验证。

根据我的经验,我可以说只有一些百分比的控制器使用验证(这取决于应用程序,但这只是一个粗略的平均值)。

最新更新