Angular 无法分配给';总计';因为它是函数get total(){}的常量或只读属性
当我在项目中使用此命令时,显示此错误。 无法分配给“total”,因为它是函数get total()的常量或只读属性{} 我的职能是:Angular 无法分配给';总计';因为它是函数get total(){}的常量或只读属性,angular,typescript,Angular,Typescript,当我在项目中使用此命令时,显示此错误。 无法分配给“total”,因为它是函数get total()的常量或只读属性{} 我的职能是: get total() { return this.products .map(p => p.Unit_price * p.Quantity) .reduce((a, b) => a + b, 0); } Html: 有什么想法吗?使用--prod标志构建实际使用aot,这比
get total() {
return this.products
.map(p => p.Unit_price * p.Quantity)
.reduce((a, b) => a + b, 0);
}
Html:
有什么想法吗?使用--prod
标志构建实际使用aot,这比仅使用ng serve时要严格得多
我认为这是因为所有字段的[(ngModel)]
设置为total
,并使用双向绑定(get/set);您与total
getter冲突
由于总数是经过计算的,我认为为
总数
设置双向绑定是没有意义的,它应该是只读的。对于ngModel,小计/支付金额不应使用total
我也有同样的问题,但就我而言,是指表格的有效状态
<-- HTML-->
<button
type="submit"
[(disabled)]="!loginForm.valid">
Enter
</button>
进入
对我有效的是将该检查分配给一个新的公共变量
<-- JS -->
public validForm: boolean;
ngOnInit() {
this.validForm = this.loginForm.valid;
}
<-- HTML -->
<button
type="submit"
[(disabled)]="!validForm">
Entrar
</button>
公共有效形式:布尔;
恩戈尼尼特(){
this.validForm=this.loginForm.valid;
}
诱捕者
如果只使用单向数据绑定,也可以使用
<button
type="submit"
[disabled]="!loginForm.valid">
Entrar
</button>
诱捕者
这对我很有用。您使用的是什么angular和cli版本?你能运行“ng serve”吗?你试过在total()之前没有“get”吗?如果你只是“返回5”,它能工作吗;(例如)?@ForestG“@angular/cdk”:“^5.1.1”;“@angular/cli”:“^1.6.2”,当我运行ng serve时,工作良好您能告诉我您在哪里使用它吗?或者您在哪里使用了total
变量?请,您能为此提出任何解决方案吗?当使用[value]=“total”type=“text”class=“validate”[(ngModel)]=“total”
或任何计算total的示例时,我遇到了这个问题?
<-- JS -->
public validForm: boolean;
ngOnInit() {
this.validForm = this.loginForm.valid;
}
<-- HTML -->
<button
type="submit"
[(disabled)]="!validForm">
Entrar
</button>
<button
type="submit"
[disabled]="!loginForm.valid">
Entrar
</button>