使用装饰器访问角度服务的私有变量和函数

时间:2016-04-26 22:23:57

标签: angularjs

我们正在尝试使用装饰器覆盖现有代码,以确保不更改实际代码。

但是,我们可以覆盖使用此声明的服务中的函数。如果服务包含函数example()之类的私有函数,我无法覆盖。

您能否帮我提供一个选项,如何阅读未使用""

宣布的功能和变量?

请找到plunker示例 -

var upstream = angular.module('thirdParty', []);

http://plnkr.co/edit/QQh5ljTvIb1p8tTYXicn?p=preview 

从上面的示例中,可以访问getContent,并且无法访问getContent1。

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

在JavaScript的函数范围之外无法访问局部变量。每个私有函数/变量都应作为方法/属性公开,以便在外部作用域中可用。

对私有属性/方法使用下划线命名约定,以区别于公共属性/方法:

this._privateMethod = () => { ... };