首页 > 解决方案 > 无法在 Angular 9 中绑定 ngmodel

问题描述

这是html

<input type="text" [(ngModel)]="name" />

<button (click)="addtext()">add</button>

这是ts

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

@Component({
  selector: "app-post",
  templateUrl: "./post.component.html",
  styleUrls: ["./post.component.css"],
})
export class PostComponent implements OnInit {
  constructor() {}

  ngOnInit(): void {}

  name: string = "";
  addtext() {
    console.log("your name is: ", name);
  }
}

请帮我绑定这个东西,有问题

我想在日志中写入名称的文本并将 ngmodel 绑定为文本,名称

标签: angularngmodel

解决方案


Name 是 PostComponent 类的成员变量。要在任何实例方法(在本例中为 addtext)中访问 name 实例变量,您需要使用this关键字来引用它。否则,它会尝试在 addtext 函数的范围内访问名为 name 的局部变量,并且由于该范围内没有名为 name 的变量,它将打印undefined. 希望这可以帮助。

addtext()
{
    console.log("your name is: " + this.name);
}

推荐阅读