所有:
我是Angular2的新手,当我尝试构建一个简单的计数器服务时:
从@ @ angular / core导入;
@Injectable()
export class Counter {
count = 0;
constructor(start = 0){
this.count = start;
// this.reset();
}
reset(start=0){
this.count = start;
}
inc(){
this.count++;
}
dec(){
this.count--;
}
show(){
return this.count;
}
}
我在构造函数中尝试做的是设置一个默认的init参数 start
来默认计数为0,但我得到的错误如下:
(SystemJS)无法解析Counter:(?)的所有参数 .
My question is :
这是因为Angular2会将构造函数参数列表中的所有内容都视为依赖注入,是否允许设置其他类型的参数,或者还有其他原因导致此错误?我必须使用 reset()
来达到同样的目的吗?
它是否正确?
谢谢
1 回答
是 .
尽管如此,你可以做的是使用
@Optional
. 但这一点毫无意义 . 什么时候你会提供 Value ?所以它永远是0.毫无意义 .如果要为注入提供任意值,可以使用
@Inject
并使用标记配置值 . 例如现在你可以注入它并使其成为可选项