如何在 angular 6 中的另一个服务中调用自定义服务
How to call custom service inside another services in angular 6
如何在angular6
中调用另一个自定义服务中的自定义服务
我创建了两个服务 user.services.ts 和 counter.services.ts
出现错误:无法调用类型缺少调用签名的表达式。类型 'Number' 没有兼容的调用签名
甚至尝试在 app.modules providers 数组中添加服务名称,但同样的错误得到
user.services.ts
import { Injectable } from '@angular/core';
import { CounterService } from './counter.service';
@Injectable({
providedIn: 'root',
})
export class UserService {
activeUsers = ['Max', 'Anna'];
inactiveUsers = ['Chris', 'Manu'];
constructor(private counterSer: CounterService) { }
setUserActive(id: number) {
this.activeUsers.push(this.inactiveUsers[id]);
this.inactiveUsers.splice(id, 1);
this.counterSer.activeToInactiveCounter();
}
setUserInactive(id: number) {
this.inactiveUsers.push(this.activeUsers[id]);
this.activeUsers.splice(id, 1);
}
}
Counter.services.ts
import { Injectable } from '@angular/core';
@Injectable({
providedIn: 'root'
})
export class CounterService {
constructor() { }
activeToInactiveCounter = 0;
inactiveToActiveCounter = 0;
incrementActiveToInactive() {
this.activeToInactiveCounter++;
console.log(this.activeToInactiveCounter);
}
incrementInactiveToActive() {
this.inactiveToActiveCounter++;
console.log(this.inactiveToActiveCounter);
}
}
您正在调用 属性 activeToInactiveCounter
作为方法。我想你是想打电话给 incrementActiveToInactive()
.
所以 setUserActive
中的 this.counterSer.activeToInactiveCounter();
应该是 this.counterSer.incrementActiveToInactive();
setUserActive(id: number) {
this.activeUsers.push(this.inactiveUsers[id]);
this.inactiveUsers.splice(id, 1);
this.counterSer.incrementActiveToInactive();
}
如何在angular6
中调用另一个自定义服务中的自定义服务我创建了两个服务 user.services.ts 和 counter.services.ts
出现错误:无法调用类型缺少调用签名的表达式。类型 'Number' 没有兼容的调用签名
甚至尝试在 app.modules providers 数组中添加服务名称,但同样的错误得到
user.services.ts
import { Injectable } from '@angular/core';
import { CounterService } from './counter.service';
@Injectable({
providedIn: 'root',
})
export class UserService {
activeUsers = ['Max', 'Anna'];
inactiveUsers = ['Chris', 'Manu'];
constructor(private counterSer: CounterService) { }
setUserActive(id: number) {
this.activeUsers.push(this.inactiveUsers[id]);
this.inactiveUsers.splice(id, 1);
this.counterSer.activeToInactiveCounter();
}
setUserInactive(id: number) {
this.inactiveUsers.push(this.activeUsers[id]);
this.activeUsers.splice(id, 1);
}
}
Counter.services.ts
import { Injectable } from '@angular/core';
@Injectable({
providedIn: 'root'
})
export class CounterService {
constructor() { }
activeToInactiveCounter = 0;
inactiveToActiveCounter = 0;
incrementActiveToInactive() {
this.activeToInactiveCounter++;
console.log(this.activeToInactiveCounter);
}
incrementInactiveToActive() {
this.inactiveToActiveCounter++;
console.log(this.inactiveToActiveCounter);
}
}
您正在调用 属性 activeToInactiveCounter
作为方法。我想你是想打电话给 incrementActiveToInactive()
.
所以 setUserActive
中的 this.counterSer.activeToInactiveCounter();
应该是 this.counterSer.incrementActiveToInactive();
setUserActive(id: number) {
this.activeUsers.push(this.inactiveUsers[id]);
this.inactiveUsers.splice(id, 1);
this.counterSer.incrementActiveToInactive();
}