Текстовое поле Approche Pass, управляемое шаблоном Angular Значение для Componet.ts в текстовом поле Изменить событие

Во время проверки с использованием Template Driven Approche возникла ошибка:

Параметр «val» неявно имеет тип «любой», но лучший тип может быть выведен из использования.ts(7044)

здесь я добавляю связанные файлы, пожалуйста, помогите.

<form>
<div class = "form-group">
    <label for = "firstName">First Name</label>
    <input ngModel name = "firstName" #firstName = "ngModel" (change) = "log(firstName)"  id=firstName type = "text" class = "form-control">
</div>   
<div class = "form-group">
    <label for = "comment">Comments</label>
    <textarea   id=comment type = "text" cols = "5" rows = "10" class = "form-control"></textarea>
</div>
<div class = "form-group">
<button class = "btn btn-danger">Submit</button>
</div>
</form>

компонент.ts

import { Component, OnInit } from '@angular/core';

@Component({
  selector: 'contact-form',
  templateUrl: './contact-form.component.html',
  styleUrls: ['./contact-form.component.scss']
})
export class ContactFormComponent {

log(val)
{
  console.info(val);
}
}

tsconfig.json

/* To learn more about this file see: https://angular.io/config/tsconfig. */
{
  "compileOnSave": false,
  "compilerOptions": {
    "baseUrl": "./",
    "outDir": "./dist/out-tsc",
    "forceConsistentCasingInFileNames": true,
    "strict": true,
    "noImplicitReturns": true,
    "noFallthroughCasesInSwitch": true,
    "sourceMap": true,
    "declaration": false,
    "downlevelIteration": true,
    "experimentalDecorators": true,
    "moduleResolution": "node",
    "importHelpers": true,
    "target": "es2015",
    "module": "es2020",
    "lib": [
      "es2018",
      "dom"
    ],
    "noImplicitAny": false
  },
  "angularCompilerOptions": {
    "strictInjectionParameters": true,
    "strictInputAccessModifiers": true,
    "strictTemplates": true
  }
}

Какой тип выводится в коде Visual Studio при наведении курсора на этот параметр?

Panagiotis Bougioukos 14.12.2020 15:32

@PanagiwthsMpougioukos - (параметр) val: любой . когда я нажимаю Ctrl+. он был изменен на log(val: any)

Jks 14.12.2020 15:36

какую версию машинописного текста вы используете?

Panagiotis Bougioukos 14.12.2020 15:40
github.com/microsoft/TypeScript/issues/28826
Panagiotis Bougioukos 14.12.2020 15:44

@PanagiwthsMpougioukos "версия": "4.0.5"

Jks 14.12.2020 16:40
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Angular и React для вашего проекта веб-разработки?
Angular и React для вашего проекта веб-разработки?
Когда дело доходит до веб-разработки, выбор правильного front-end фреймворка имеет решающее значение. Angular и React - два самых популярных...
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Мы провели Twitter Space, обсудив несколько проблем, связанных с последними дополнениями в Angular. Также прошла Angular Tiny Conf с 25 докладами.
Угловой продивер
Угловой продивер
Оригинал этой статьи на турецком языке. ChatGPT используется только для перевода на английский язык.
Мое недавнее углубление в Angular
Мое недавнее углубление в Angular
Недавно я провел некоторое время, изучая фреймворк Angular, и я хотел поделиться своим опытом со всеми вами. Как человек, который любит глубоко...
Освоение Observables и Subjects в Rxjs:
Освоение Observables и Subjects в Rxjs:
Давайте начнем с основ и постепенно перейдем к более продвинутым концепциям в RxJS в Angular
0
5
121
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Добавлен FormsModule в app.module.ts при импорте

imports: [
    BrowserModule,
    AppRoutingModule,
    FormsModule -- Added Here 
    
  ],

будет решен вопрос для меня

Также нашел ошибку в консоли как Ошибка: Экспорт имени «ngModel» не найден

Другие вопросы по теме