我想要两个元素
<validation-element idx="1"></validation-element>
<validation-element idx="2"></validation-element>
其中两个都包含带有自定义验证的纸张输入。
<custom-validator validator-name="validator" idx="[[idx]]"></custom-validator>
<paper-input type="text" auto-validate validator='validator'></paper-input>
在验证功能中我退出idx
:
validate: function(val) {
console.log('idx',this.idx, 'val',val);
return true;
}
以下是我所拥有的plunk
问题是在控制台中我看到idx=2
这两个元素但它们使用的是单独的验证器。
为什么我在不同的元素中看到相同的idx
?
如何为2个元素制作单独的验证器?
答案 0 :(得分:2)
使用IronValidatorBehavior
实施iron-meta
。 validator-name
是用于注册验证器的密钥,因此,当您创建第二个实例时,它只是替换第一个实例!
[编辑]如上所述,使用计算属性是可行的方法,但您还必须在自定义验证程序中的validatorName中添加一个观察者,以便我们可以使用正确的密钥创建新的iron-meta
!
请参阅:http://plnkr.co/edit/mLDU20?p=preview