AngularJS从对象生成的选择框 [英] AngularJS select box generated from object

查看:172
本文介绍了AngularJS从对象生成的选择框的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我重构了一些code,并希望改变code /名对象数组被命名的对象。我想这样做,所以我可以用它相等测试。旧的方式是直接比较code ...

I am refactoring some code, and want to change an array of code/name objects to be named objects. I want to do this so I can use it for equality tests. The old way was to compare the code directly...

if(current.addressCode === "1"){ ... }

不过,我想preFER做这样的...

But I would prefer to do it like this...

if(current.addressCode === types.student.address.letter.code){ ... }

旧的对象看起来像这样...

The old object looks like this...

student{
  address: [
    {code: "0", name: "Select proof of address"},
    {code: "1", name: "Letter"},
    {code: "3", name: "Photograph"}
  ],
  id: [
    {code: "0", name: "Select type of ID"},
    {code: "1", name: "Passport"},
    {code: "2", name: "Driving Licence"}
  ]
}

所以,我希望我的新的对象,看起来像这样...

So I want my new object to look like this...

student: {
  address: {
    select: {code: "0", name: "Select proof of address"},
    letter: {code: "1", name: "Letter"},
    photograph: {code: "3", name: "Photograph"},
  },
  id: {
    select: {code: "0", name: "Select type of ID"},
    passport: {code: "1", name: "Passport"},
    drivingLicense: {code: "2", name: "Driving Licence"},
  }
}

我在哪里卡住了,是我不知道如何生成从这个角度对象JS它用来从旧体制这样的...

Where I am stuck, is I don't know how to generate a select element in angular js from this object which used to be generated from the old structure like this...

<select ng-model="current.addressCode" ng-options="t.code as t.name for t in student.address"></select>

我如何使用新的对象来生成一个选择表单元素?

How can I use the new object to generate a select form element?

推荐答案

试试这个

<select ng-model="current.addressCode" ng-options="value.code as value.name for (key,value) in student.address"></select>

这篇关于AngularJS从对象生成的选择框的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆