2015-04-29 5 views

ответ

1

Это машинопись. Эти параметры украшены типами данных. Но ваша функция принимает два параметра, и вы только передаете их. Второй параметр должен быть факультативным, как это:

function(a: string, b?:any) { 
} 
+1

Спасибо, но typescript использует .ts-файл, а не .js – MuriloKunze

+0

Я только заметил, что в комментариях выше тоже. Итак, я понимаю, почему это тайна. Я пробовал это в коде, а вместо красной ошибки получаю зеленое предупреждение, в котором говорится: «Не используйте специфическую конструкцию языка TypeScript в JavaScript». Итак, Code, похоже, знает, что это JavaScript. –

3

код использует машинописи мозг, чтобы понять JavaScript код: https://code.visualstudio.com/Docs/languages#_javascript. Он предоставляет настройку конфигурации, которая контролирует, следует ли игнорировать спецификацию TypeScript, предупреждение или ошибку. В пользовательских настройках выполните следующие действия:

{ 
    "javascript.validate.lint.typeScriptSpecifics": "error" 
} 
+0

Это хорошая находка. Чтобы проверить, я установил это, чтобы «игнорировать», и «transcompile» ошибки ушли. Установка ** javascript.validate.lint.unusedVariables ** и ** javascript.validate.lint.unusedFunctions ** удалены другие предупреждения. Но если мы игнорируем спецификацию TypeScript, почему возникает ошибка при вызове «name» с неправильным типом параметра? –

+0

Ничего, но я пробовал все опции «игнорировать», «предупреждение» и «ошибка», и никто, кажется, не понимает ошибку. – MuriloKunze