Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 13248|Отговор: 0

[TypeScript] TypeScript: Свойството "value" не съществува при тип "HTMLElement"

[Копирай линк]
Публикувано в 27.05.2019 г. 14:06:54 ч. | | |
HTML изглежда така:

и greeter.ts Документи:

Когато компилирам с TSC, получавам следната "грешка":

/home/bjarkef/sandbox/greeter.ts(8,53):属性’value’不存在类型’HTMLElement’的值,

Въпреки това, компилаторът извежда javascript файл, който работи добре в Chrome.

Как получих тази грешка? Как мога да го оправя?

Също така, къде мога да намеря кои свойства са валидни в "HTMLElement" според typescript?

Имайте предвид, че съм много нов в JavaScript и typescript, така че може би пропускам нещо забележимо.


Според отговора на Томаш Нуркевич, "проблемът" е, че typescript е безопасен за тип. :) така че типът HTMLElement, върнат от document.getElementById(), не съдържа свойството стойност. Въпреки това, подтипът HTMLInputElement съдържа свойството стойност.
Решение е да се преобразува резултатът от getElementById() в HTMLInputElement по следния начин:


<> е операторът за кастинг в машинописа.

JavaScript, генериран от горния ред, изглежда така:

Тоест, тя не съдържа информация за типа.




Предишен:"Операции с контейнерни облаци на практика: Docker и Kubernetes клъстери" от Хуанг Дзинджун
Следващ:Определен курс по работа в блокчейн езика с конски игри приключи
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com