我有一个Utils
很重的服务。我想在特定的用户操作上使用其中定义的一些功能。由于这项服务很重,我想懒惰地实例化它(根据用户操作)。
我如何实现这一目标?
服务
module.service('Utils', function (dep1, dep2) {
this.method1 = function () {
// do something
}
// other methods
});
控制器
module.controller('AppCtrl', function ($scope) {
// I don't want to inject Utils as a dependency.
$scope.processUserAction = function () {
// If the service is not instantiated
// instantiate it and trigger the methods defined in it.
}
});
标记
<div data-ng-controller="AppCtrl">
<button data-ng-click="processUserAction()"> Click Me </button>
</div>