javascript - 无法在使用 ref 和 VeeValidate 的方法中获得实际的“有效”属性
问题描述
我有<ValidationObserver ref="observer">
,里面有一些ValidationProviders
。getUnit()
要在我使用的方法中获取“有效”属性this.$refs.observer.fields["Unit"].valid
,但目前它还没有实际的“有效”属性。稍晚一点就明白了。我必须根据该字段的有效性做一些事情。
那么,如果还没有,我如何获得该字段的实际“有效”属性?
它会在一个符号中产生某种延迟,但我需要立即更改“继续”按钮的状态。
解决方案
字段在第一次渲染之后才会被注册,因此您需要添加一些检查以确保在检查之前您的字段存在。我建议在模板中这样做并避免使用$refs
,因为它们不是反应性的。
<!-- If used from the Provider slot props, it will always be present -->
<ValidationProvider v-slot="{ valid }">
{{ valid }}
</ValidationProvider>
valid
如果您需要从插槽外部访问属性Provider
,您也可以在ValidationObserver
插槽道具上访问它。但是你需要先检查它的存在。
<!-- If used from the Provider slot props, it will always be present -->
<ValidationObserver v-slot="{ fields }">
{{ fields.unit && fields.unit.valid }}
</ValidationObserver>
这假定字段vid
orname
是unit
。
推荐阅读
- ios - 如何使用 CoreBluetooth 在 iOS 中扫描附近的蓝牙设备?
- python - 如何在可视代码中按比例缩进多行
- angular - 检测角度值的变化
- java - 如何使用 selenium java 从下面的 html 代码中获取文本?
- python - 如何在 django 中取消关注 url?
- json - MarkLogic 是否原生存储 JSON?
- javascript - React Native,Flatlist 自定义每行 2 个项目
- oracle - 在SQL过程中将一列中的逗号分隔值拆分为多列
- docker - Gitlab CI 管道拉取失败无踪
- swift - 在消息气泡 MessageKit swift 中显示来自远程服务器的图像