Javascript 何时使用ng include vs custom指令
我和我的同事就这个问题发生了争执,我想知道其他angular开发人员对angular js中使用自定义指令的看法。我个人更喜欢使用自定义指令,而不是使用具有多个ng包含的单个控制器,原因如下Javascript 何时使用ng include vs custom指令,javascript,angularjs,angularjs-directive,angularjs-ng-include,Javascript,Angularjs,Angularjs Directive,Angularjs Ng Include,我和我的同事就这个问题发生了争执,我想知道其他angular开发人员对angular js中使用自定义指令的看法。我个人更喜欢使用自定义指令,而不是使用具有多个ng包含的单个控制器,原因如下 创建关注点分离,因为每个组件都被划分为其逻辑块,而在将多个ng Include与单个父控制器一起使用时,所有逻辑都驻留在单个文件中 易于维护,因为每个组件的逻辑都驻留在指令中,所以代码导航更容易 使单元测试变得容易。一旦对指令的逻辑进行单元测试,就不必在使用指令的其他区域重新测试相同的逻辑。所以从长远来看,
对于我来说,使用自定义指令的主要卖点是因为可重用性、关注点分离和不重复自己的概念。同样在开发方面,使用自定义指令构建应用程序所需的时间与使用多个ng Include和单个控制器构建应用程序所需的时间大致相同。因此,如果我们可以得到一个可重用的组件,具有更好可读性的代码,在相同的时间内更容易维护和测试,那么为什么不使用自定义指令呢 班纳克包括了这段时间。这是没有必要的,大多数对组件化感兴趣的开发人员都会同意这种观点。忘记ng include甚至存在,除非你必须(像递归模板一样)。有点不推荐,但仍然(angular docs中的示例)有效,并且如果你只有几个模板,这是最简单的方法。指令在ng repeat中执行得更好