Ответ 1
Способ объявления свойства даты как ввода выглядит некорректно, но трудно сказать, является ли это единственной проблемой, не видя всего вашего кода. Вместо использования @Input('date')
объявите свойство date следующим образом: private _date: string;
. Кроме того, убедитесь, что вы создаете модель с помощью ключевого слова new
. Наконец, обращайтесь к свойству с помощью регулярной точечной нотации.
Проверьте свою работу с этим примером с https://www.typescriptlang.org/docs/handbook/classes.html:
let passcode = "secret passcode";
class Employee {
private _fullName: string;
get fullName(): string {
return this._fullName;
}
set fullName(newName: string) {
if (passcode && passcode == "secret passcode") {
this._fullName = newName;
}
else {
console.log("Error: Unauthorized update of employee!");
}
}
}
let employee = new Employee();
employee.fullName = "Bob Smith";
if (employee.fullName) {
console.log(employee.fullName);
}
И вот плункер, демонстрирующий, как это звучит, как вы пытаетесь сделать: https://plnkr.co/edit/OUoD5J1lfO6bIeME9N0F?p=preview