TypeError:无法读取 Object.View_FullEditTaxComponent_0._co 处未定义的属性“taxTypeId”[作为 updateDirectives]

2023-12-08

我有一个详细信息表单,当从列表表单中选择时,应该加载记录的详细信息。当详细信息表单加载时,它应该显示所选记录的详细信息。就我而言,它显示的详细信息很好,但它在控制台上显示标题错误,导致应用程序崩溃。

HTML(错误行)

<select id="taxTypeId" name="TaxTypeId" [(ngModel)]="tax.taxTypeId" class="form-control" >
   <option *ngFor="let tt of taxTypes" value={{tt.id}}>{{tt.name}}</option>
</select>
<label for="taxTypeId" class="form-label">Tax Type</label>

打字稿

import { Component, ViewChild, Injector, Output, EventEmitter, ElementRef, OnInit } from '@angular/core';
import { RouterLink, Router, ActivatedRoute } from '@angular/router';
import { TaxServiceProxy, TaxDto, ListResultDtoOfTaxTypeDto } from '../../../shared/service-proxies/tax-service-proxies';
import { TaxTypeDto } from '../../../shared/service-proxies/taxType-service-proxies';
import { AppComponentBase } from '@shared/app-component-base';

@Component({
  selector: 'app-full-edit-tax',
  templateUrl: './full-edit-tax.component.html',
  styleUrls: ['./full-edit-tax.component.css']
})
export class FullEditTaxComponent extends AppComponentBase implements OnInit {
  active: boolean = false;
  saving: boolean = false;
  tax: TaxDto;
  taxTypes: TaxTypeDto[] = [];

  @Output() fromSave: EventEmitter<any> = new EventEmitter<any>();

  constructor(
    _router: Router,
    injector: Injector,
    private _taxService: TaxServiceProxy,
    private route: ActivatedRoute
  ) {
      super(injector);
      this.router = _router;
   }

  ngOnInit() {
    this.loadData();
    this.getTaxTypes();
  }

  loadData(): void {
    let id = this.route.snapshot.params['id'];
    this._taxService.get(id)
    .subscribe((result: TaxDto) => {
      this.tax = result;
    })
  }

  getTaxTypes(): void {
    this._taxService.getTaxTypes()
    .subscribe((result: ListResultDtoOfTaxTypeDto) => {
        this.taxTypes = result.items;
    });
  }

}

请问我该如何解决这个问题?


由于您正在异步加载数据tax财产是undefined首先。当 Angular 执行变化检测时,它试图从中获取价值[(ngModel)]="tax.taxTypeId"绑定,因此您会收到错误。

有很多方法可以解决这个问题:

1) 安全导航操作员

[ngModel]="tax?.taxTypeId" (ngModelChange)="tax.taxTypeId && tax.taxTypeId = $event"

2) 使用预定义值初始化属性

tax: TaxDto = new TaxDto();

3)将模板包裹起来*ngIf="tax"

<select *ngIf="tax" id="taxTypeId" name="TaxTypeId" [(ngModel)]="tax.taxTypeId" ...>
   <option *ngFor="let tt of taxTypes" value={{tt.id}}>{{tt.name}}</option>
</select>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

TypeError:无法读取 Object.View_FullEditTaxComponent_0._co 处未定义的属性“taxTypeId”[作为 updateDirectives] 的相关文章

随机推荐

  • SQL Server 查询日期范围内一个月的总天数

    我有特定的日期范围 例如 From Date To Date 2012 11 10 2012 11 15 2012 11 21 2012 11 22 2012 11 30 2012 12 01 我想编写一个 SQL 查询来计算两个日期之间的
  • KML / Google 地图 - 指定 iFrame 中嵌入地图的缩放级别

    我在 Google 地图中加载了以下 kml 文件 它正确定位了指针 但它始终以最大级别缩放 使用谷歌地图 API 我可以设置自己的缩放级别 但我尝试使用 iFrame 中的嵌入式地图 由谷歌提供 来执行此操作 有没有办法在 kml 本身中
  • 使用 objectify 进行过滤和排序的 GAE 数据存储查询

    我正在尝试在数据存储中查询过去一周 日期字段 登录的得分最高的 100 位用户 List
  • URL 是否允许包含空格?

    URI 特别是 HTTP URL 是否允许包含一个或多个空格字符 如果一个网址must被编码 是 只是一个普遍遵循的惯例 还是一个合法的替代方案 特别是 有人可以指出一个 RFC 来指示带有空格的 URLmust被编码 提问动机 在对网站进
  • 如何扩展 VpnService 以在 Android 中以编程方式打开 L2TP/IPSEC 连接?

    我正在寻求实施一个解决方案来打开一个L2TP IPSEC来自android应用程序的连接 所以我可以简单地传递server ip pre shared key username and password因此设备已连接到此 VPN 服务器 我
  • 如何在内核中打印当前时间?

    我是linux的初学者 抱歉我的英语不好 我应该打印当前时间并通过Linux中的系统调用做一些事情 我做了其他事情但未能打印当前时间 我写的是 include
  • Codeigniter 的路由不正确

    我安装了 Windows 版 Apache 我购买了 CodeIgniter Professional 并下载了他们的源代码 它说我应该将其 htaccess 放在网站的根文件夹中 所以我这样做了 我将基本 URL 设置为http 127
  • 获取公共互联网 IP 地址/地理位置的智能方法

    我在本地网络上有一台计算机 位于 NAT 路由器后面 我有一些 192 168 0 x 地址 但我真的很想知道我的publicIP 地址 未在 如何获取运行 C 应用程序的服务器的 IP 地址 or 如何在C 中获取机器的IP地址 我需要
  • 是否有一个类似字典的不可变对象? [复制]

    这个问题在这里已经有答案了 我想要一个Python对象 它可以灵活地接受任何键 并且我可以通过键访问 就像字典一样 但它是不可变的 一种选择是灵活地生成namedtuple但这样做是不好的做法吗 在下面的示例中 linter 不会期望nt有
  • 在 Chrome 扩展中显示几个 JS 变量值

    是否可以在我构建的扩展中获取我的网站 2 3 js 变量 以便我能够看到我构建的网站背后的信息 该扩展将帮助我开发我的网站 查看给定网站的变量 使用内容脚本 是可能的 只需注入您自己的内容脚本 并创建一个读取变量的脚本标记 由于内容脚本功能
  • 在Windows 7中为java和ant设置环境变量

    我有一本书说要执行以下操作 添加 JAVA HOME 和 ANT HOME 环境变量 查看 将 JAVA HOME bin 和 ANT HOME bin 添加到我的路径变量 检查 当我转到命令提示符并尝试 ant version 时 它说
  • 如何创建像 std::cout 这样的函数?

    我正在为我的项目创建自己的日志记录实用程序 我想创建一个像 iostream 的 std cout 这样的函数 以记录到文件并打印到控制台 这就是我想要的 enum debug error warning info LOG level lt
  • PHP 中使用数组上的 foreach 循环对父节点和子节点进行排序的递归函数

    我有一个存储在数组中的数据集 该数组使用父子 id 引用自身 id parent id title等等 顶层有一个parent id of 0 可以有无数的亲子关系 所以我用一个对这个数组进行排序foreach在递归函数中循环以根据其父元素
  • 将 JavaScript 确认框的结果分配给 PHP 变量

    this is in php function msgbox msg type if type alert Simple alert window gt
  • 方法 BOOL 从块内部返回

    我正在尝试将 Beelex 的新应用内购买验证添加到我的应用程序中 但是我正在努力从块内传递返回值 这是我现在的代码 正如您所看到的 我设置了一个 BOOL 值 然后在验证块中设置了 BOOL 并在最后返回它 然而 最后的 return 是
  • 如何制作带有日期和时间列的mysql表?

    我正在尝试创建一个包含日期和时间列的表 用于在数据库中记录条目时存储日期和时间信息 在 MySQL 文档中显示了以下示例 CREATE TABLE t1 ts TIMESTAMP DEFAULT CURRENT TIMESTAMP dt D
  • Typedef 位域变量

    我想要一个 1 位整数的 typedef 所以我想到了这一点typedef int 1 FLAG 但我遇到了错误 有什么办法可以做到这一点吗 谢谢 No C 程序中最小的可寻址 事物 是byte or char A char至少有 8 位长
  • Flex DataGrid 列宽

    在我的 Flex 应用程序中 我将列的宽度和可见性存储在 xml 文件中 当应用程序加载时 它从 xml 文件中读取并设置适用的列值 for i 0 i lt columnsOrder length i newOrder i myDG co
  • 错误:执行 rvm 升级命令后缺少 RVM 环境文件 - Passenger 4.0.23

    我在 Mac Mini 服务器 Mavericks 10 9 1 上运行 ruby 2 0 0 p247 我了解到存在安全漏洞 因此我决定升级以使用最新的 Ruby 补丁 2 0 0 p353 我执行了以下命令 gem update sys
  • TypeError:无法读取 Object.View_FullEditTaxComponent_0._co 处未定义的属性“taxTypeId”[作为 updateDirectives]

    我有一个详细信息表单 当从列表表单中选择时 应该加载记录的详细信息 当详细信息表单加载时 它应该显示所选记录的详细信息 就我而言 它显示的详细信息很好 但它在控制台上显示标题错误 导致应用程序崩溃 HTML 错误行