我在Angular中寻找任何构造函数类型的函数。我创建了一个服务,但它给了我一个错误。请帮助完成任务。
我的错误代码:
var app = angular.module("app1", [])
.service('NumberService', function (a) {
this.square = function () { return a * a; };
this.cube = function () { return a * a * a; };
})
.controller('ServiceController', ['$scope', 'NumberService',
function ($scope, NumberService) {
$scope.getData = function () {
// alert('Button clicked' );
var n = $scope.a;
var ns = new NumberService(n);
$scope.Square = ns.square();
// alert($scope.Square);
$scope.Cube = ns.cube();
}
}
]);
我想将NumberService创建为Singleton类。在c ++ / java / c#:
中class NumberService
{
int a;
public NumberService(int n){ a=n;}
public int square(){ return a*a;}
public in cube(){ return a*a*a;}
}
答案 0 :(得分:0)
当你用.service()创建东西时,它就变成了单身。你真的不应该这样做:
var ns = new NumberService(n);
导致NumberService指向单例实例。所以就这样做:
NumberService.square(2)
为什么你希望它成为单身人士,你的数学运算是清晰的实用方法,不需要状态?