你不了解的Hacker,实现AngularJS Controller的继承扩展

直入主题。

AngularJS是一个极其庞大的MVVM框架,其中的Controller是最常用的特性。然而Controller并没有提供继承和扩展的方法。

在实际的业务场景下,不能扩展的Controller很让开发人员头痛。今天我们就来聊聊在AngularJS中有哪些Hacker,让你使用Controller时如鱼得水。

附上相关代码的下载链接

1. 针对Controller添加公共方法(使用Controller的“伪继承”)
AngularJS中的Controller继承,并不是真的继承,而是针对Controller添加公有的方法,所以称之为"伪继承"


2. 对父类的方法进行扩展
针对公共的父类方法,如果单个模块需要扩展,我们可以使用AngularJS提供的scope订阅发布模式实现。
父类广播事件

子类订阅事件


3. 直接重写方法,而非进行扩展
原理和扩展大同小异,只是在广播事件中加入数据。
父类方法检查数据

子类方法加入逻辑判断


上述方法,即可在复杂的AngularJS中实现针对业务的扩展,简单易用,可谓利器。


展开阅读全文

没有更多推荐了,返回首页