Show/hide 个基于自定义对象的字段

Show/hide fields based on custom object

我想做的是在一个地方,对象(如本例 vm.foo 中)和 key: value 对显示和隐藏我的字段。因此,例如,我可以将另一对对象放入我的对象中,例如: 1502: true 我可以使用它来隐藏带有键 1502

的字段

如果有任何方法可以将我的变量从控制器传递给 hideExpression 使用。

虽然 hideExpression 属性 设置为 true[=35=,但这里只是一个 link 未隐藏项目的小示例]
http://jsbin.com/rorocitoqi/edit?html,js,output

下面只是一个小片段,似乎 hideExpression 没有从 vm.foo[bar] 中获取我的值,但是当我检查 console.log 值存储在 vm.foo 中时。如果有人能提供正确的指导,因为我刚开始正式,谢谢 :)

vm.foo = {      
  1000: true,
  1021: false,
  3204: true
};

var bar = 1000;

console.log(vm.foo[bar]);

{
  key: 'text',
  type: 'checkbox',
  templateOptions: {
    label: 'Hidden box'
  },
  hideExpression: 'vm.foo[bar]'
}

您误解了 hideExpressions 的工作原理。 formlyExpressionexpressionProperties.

相似(不完全相同)

这里是the working example

{
  key: 'text',
  type: 'checkbox',
  templateOptions: {
    label: 'Hidden box'
  },
  hideExpression: function() { return vm.foo[bar] }
}