angular - đặt giá trị ngModel giống như giá trị của input
Tôi đang cố gắng gọi hàm bên trong [(ngModel)] nhưng nó báo lỗi Unexpected token '=' tại cột 27 trong [sum(data,'feeAssign') || 0=$event]
dữ liệu json
{ "org_Id": 1, "academic_Id": 1, "fee_Category_Id": 5, "type_Id": 12, "duration_Id": 2, "structure_Id": 59, "sub_structure_Id": 18, "installment_Id": 1, "type_Det_Name": "Term Fees - Term", "student_Id": 0, "receipt_Id": 0, "receipt_Code": 0, "structure_Amount": 4, "discountAmount": 0, "receipt_Amount": 0, "responseCode": 0, "responseMessage": "Fee Collection Received Succesfully", "feeAssign": 4, "paid": 0, "feeBalance": 4, "payable": 4 }
mã thành phần html
<nz-input-number [nzDisabled]="true" [(ngModel)]="sum(data,'feeAssign') || 0" [nzMin]="1"
[nzStep]="1">
</nz-input-number>
mã tệp .ts
sum(array, key) {
return array.reduce(function (sum, current) {
debugger;
return sum + current[key];
}, 0);
}
Tôi đã thử với [ngModel], không có lỗi nhưng trong trường hợp đó nó không gọi hàm sum.
Tôi muốn gọi hàm mà tổng các giá trị trong mảng và trả về các giá trị đã được cập nhật.
Câu trả lời #1
Bạn chỉ có thể sử dụng [ngModel]: [ngModel]="sum(data,'feeAssign') || 0"
ràng buộc một chiều với ngModel bằng cú pháp []