我是AngularJS的新手.我目前正在查看
services.其中一些服务看起来像JavaScript中已有的替换功能.例如,$timeout service.为什么AngularJS有这些服务?有技术原因吗?这种方法有什么好处吗?我只是不明白使用这些服务的必要性.
感谢您的任何帮助.
服务是一个函数或对象,具有一组方法,可以由应用程序的多个组件(控制器,指令,过滤器,其他服务)使用.
像$timeout或$window这样的“包装”服务的主要优点是它们的全局函数等效于它们是由Angular注入的,因此可以在单元测试中进行模拟,即由伪实现替换.
请阅读角度文档中有关dependency injection的章节.特别是关于$timeout服务,它的文档解释了它除了原生的setTimeout()函数之外还做了什么.