У меня проблема в настоящее время при работе с декораторами Typescript в Angular.
Я пытаюсь создать простой декоратор, в котором вы можете указать тип ввода для элемента управления или выбрать опции и т. Д. c идея заключается в том, что я могу построить форму только из модели.
export class UserForm {
@Input('text')
@Required()
firstName: string;
@Input('text')
@Required()
lastName: string;
}
Требуемый декоратор работает отлично, и у меня нет абсолютно никаких проблем с ним, но по какой-то причине директива @Input () Деос, кажется, не работает. (Я знаю, что имя конфликтует с Angulars Input, но я на 100% гарантирую, что я использую правильный). В настоящее время у меня очень простой c декоратор ...
export const Input = (inputType: string) => {
return (): PropertyDecorator => {
return (target: object, propertyKey: string) => {
console.log(inputType, target, propertyKey);
};
};
};
всякий раз, когда я делаю это, я получаю следующую ошибку
'Input (' text ')' принимает тоже несколько аргументов, которые будут использоваться в качестве декоратора здесь. Вы хотели сначала вызвать его и написать '@Input (' text ') ()'?
Я буквально не знаю, почему это происходит, я попытался вставить функцию сверху файла и не экспортируя.
Также стоит упомянуть, что это делается в настройке библиотеки Angular, и я где-то читал, что это связано с набором текста, но я не был слишком уверен, потому что требуемая работа.