У меня есть приложение, отображающее вложения, которые были загружены пользователями.
В некоторых ситуациях я хочу «очистить» все мои Attachment-объекты в MyService. Как-то не могу вызвать чистый метод Attachment. Я получаю следующую ошибку: ERROR TypeError: attachment.clean не является функцией Однако, когда я создаю новый экземпляр Attachment, я могу вызвать этот метод.
Поскольку я новичок в Angular, Я еще не совсем разбираюсь в механике. Что здесь происходит? И как это исправить?
Мой класс обслуживания:
export class MyService {
public attachments: Attachment[] = []
populateAttachments(){
... //retriving data through service that populates the array
}
myMethod() {
for (let attachment of this.attachments) {
let newAttachment: Attachment = new Attachment("value1", 2, 2, "value2", "value3");
newAttachment.clean(); // < --works just fine
attachment.clean(); // <-- ERROR TypeError: attachment.clean is not a function
}
}
}
Мой класс модели:
export class Attachment {
type: string;
reasonPicked: number;
optionPicked: number;
documentName: string;
document: string;
constructor(type: string, reason_picked: number, option_picked: number, documentName: string, document: string) {
this.type = type;
this.reasonPicked = reason_picked;
this.optionPicked = reason_picked;
this.documentName = documentName;
this.document = document;
}
public clean() {
this.reasonPicked = 0;
...
}
}