Javascript 基于自定义对象显示/隐藏字段
我试图做的是让一个地方,对象(如本例中的Javascript 基于自定义对象显示/隐藏字段,javascript,angularjs,angular-formly,Javascript,Angularjs,Angular Formly,我试图做的是让一个地方,对象(如本例中的vm.foo)与key:value成对显示和隐藏我的字段。例如,我可以把另一对像:1502:true这样的对象放在我的对象上,我可以用它来隐藏我的字段和key1502 如果有任何方法可以将我的变量从控制器传递给hideExpression使用 这里只是一个链接,指向同一个小示例,其中项目没有隐藏,尽管hideExpression属性设置为true 下面只是一个小片段,似乎hideExpression没有从vm.foo[bar]获取我的值,但当我检查con
vm.foo
)与key:value
成对显示和隐藏我的字段。例如,我可以把另一对像:1502:true
这样的对象放在我的对象上,我可以用它来隐藏我的字段和key1502
如果有任何方法可以将我的变量从控制器传递给hideExpression
使用
这里只是一个链接,指向同一个小示例,其中项目没有隐藏,尽管hideExpression
属性设置为true下面只是一个小片段,似乎
hideExpression
没有从vm.foo[bar]
获取我的值,但当我检查console.log时,
值存储在vm.foo
中。如果有人能提供正确的指导,因为我刚开始使用formly,谢谢:)
你误解了工作原理。它是一个
格式表达式
与表达式属性
类似(不完全相同)
这是:
注意,对于您正在做的事情,我建议您考虑使用
formState
感谢您的快速响应和帮助,同时我将尝试合并并使用formState
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]'
}
{
key: 'text',
type: 'checkbox',
templateOptions: {
label: 'Hidden box'
},
hideExpression: function() { return vm.foo[bar] }
}