【问题标题】:Angular state not switching upon conditional change角度状态不会在条件更改时切换
【发布时间】:2022-01-13 19:35:26
【问题描述】:

首先是 Typescript 代码,然后是 HTML:

public checkValue() {
    let finalChoice = false;
    if (typeof this.formUser.permissionsTemplateID === undefined) {
      finalChoice = true;
    }
    return finalChoice;
  }
<div class="form-group">
  <label for="template">Permissions Template</label>
  <kendo-dropdownlist onChange="checkValue()" required name="template" [data]="templates" [(ngModel)]="formUser.permissionsTemplateID" [valuePrimitive]="true" textField="name" valueField="id"></kendo-dropdownlist>
  <div [hidden]="checkValue()" class="alert alert-danger">Please enter a valid permissions template.</div>
</div>

所以,我很确定我在这里只遗漏了一个小细节。我希望在您第一次跳转到页面时提到这个警告(不是我这样做的方式,但我有我的命令)然后一旦有人从下拉菜单中选择,那么错误消息应该会消失。

【问题讨论】:

  • permissionsTemplateID 为空字符串,null 或 0 为 finalChoice 应该为 false 怎么办?

标签: html angular typescript


【解决方案1】:

乍一看,在比较this.formUser.permissionsTemplateID 的类型时,您应该检查一个字符串('undefined' 而不是undefined):

if (typeof this.formUser.permissionsTemplateID === 'undefined') {

【讨论】:

  • 就是这样。我觉得有点傻,但是谢谢!
猜你喜欢
  • 1970-01-01
  • 2020-06-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-18
相关资源
最近更新 更多