绑定响应中的值并使用 angular2 使用这些值制作复选框

Posted

技术标签:

【中文标题】绑定响应中的值并使用 angular2 使用这些值制作复选框【英文标题】:Binding the values from response and make the checkboxes with those value using angular2 【发布时间】:2019-05-30 19:36:59 【问题描述】:

我有 2 个 API,1 个 API 用于获取菜单列表。另一个 API 用于在保存检查列表后使用 Values 获取数据。因此,根据数据,我必须取消选中值为 0 的框并检查值是否为 1。

Demo

TS:

getUserMenu() 
let data = [HasCaseManagement: 1,HasDicom: 0,HasEMR: 1,HasHomeDashboard: 1,HasReport: 1,HasSystemSettings: 1,HasUserManagement: 0,Id: 54,UserId: 1387]
        data.map(a => 
          this.userMenu.map(r => 
            if (r == a) 
              r.isChecked = true;
              this.selectedMenuIds.push(a)
              this.selectedMenuIds = this.userMenu.filter(x => x.isChecked).map(y => y);
            
          )
        )
   

这里的数据是我从 API 获得的针对特定用户的响应。这样我就可以绑定校验值如果是1,如果是0就取消勾选。

如何绑定响应中的值,并使用 angular2 使带有这些值的复选框?

【问题讨论】:

您能详细说明一下吗?我在您的演示中没有发现任何问题。 在我的演示中,它是根据 UserMenu 绑定的,但我希望它能够根据 getUserMenu 中的响应来获取检查和取消检查值 【参考方案1】:

我想你想要像Stackblitz Fork这样的东西

如果是这样,那你就错过了:

 getUserMenu() 
    ...
    this.userMenu = data;
  

  ngOnInit() 
    this.getUserMenu();
  

你可以阅读ngOnInit()here和here的解释

总结:

一个生命周期钩子,在 Angular 初始化所有之后调用 指令的数据绑定属性。定义一个 ngOnInit() 方法来 处理任何额外的初始化任务。

更多关于lifecycle hooks的解释

【讨论】:

以上是关于绑定响应中的值并使用 angular2 使用这些值制作复选框的主要内容,如果未能解决你的问题,请参考以下文章

协助表格添加行中的值并使用按钮删除它们。使用 jQuery

soapui测试 - 提取响应值并在平面文本中使用它

根据数组中的值检查值并使用 PHP 返回键

您如何更新 ko.observableArray 中的项目值并重新绑定?

Angular 2使用getter和setter将输入表单值与模型绑定

从 Firebase Realtime 获取特定值并收集它们的值