【问题标题】:Vuelidate - shaking the incorrect input fieldVuelidate - 摇晃不正确的输入字段
【发布时间】:2020-05-08 09:04:01
【问题描述】:

查看Vuelidate documentation 的基本表单。如果规则被破坏(文本太短),标签为红色,然后出现错误消息,输入字段会抖动一会儿。这是怎么做到的?我已经复制了源代码示例,并且没有晃动效果。我什至无法用官方小提琴来模拟它:https://jsfiddle.net/so89zmpe/2/

<div class="form-group" :class="{ 'form-group--error': $v.name.$error }">
  <label class="form__label">Name</label>
  <input class="form__input" v-model.trim="$v.name.$model"/>
</div>

我在 Chrome 开发人员中找不到任何相关内容

【问题讨论】:

    标签: vue.js vuelidate


    【解决方案1】:

    如果你打开 DevTools > Animations 选项卡,你可以看到.form-group.form-group--error 上应用了一个动画名称shakeError

    这是shakeError的定义:

    @keyframes shakeError {
      0% {
        transform: translateX(0); }
      15% {
        transform: translateX(0.375rem); }
      30% {
        transform: translateX(-0.375rem); }
      45% {
        transform: translateX(0.375rem); }
      60% {
        transform: translateX(-0.375rem); }
      75% {
        transform: translateX(0.375rem); }
      90% {
        transform: translateX(-0.375rem); }
      100% {
        transform: translateX(0); } }
    

    然后,

    .form-group--alert,
    .form-group--error {
      animation-name: shakeError;
      animation-fill-mode: forwards;
      animation-duration: .6s;
      animation-timing-function: ease-in-out; }
    

    您可以查看 https://vuelidate.js.org/#sub-basic-form 的 Sources 选项卡以获取 docs.scss 文件以深入了解。

    【讨论】:

    • 谢谢,已经成功了:jsfiddle.net/literakl/bhL6aod9/7
    • 这是我可以导入的 vuelidate 库的一部分吗?还是我需要将所有 css 复制粘贴到我的项目中?
    • @LeosLiterak 我相信这是自定义样式。您可以复制上面的 CSS,它应该可以工作。
    • @LeosLiterak ?
    • 不错,库中有co CSS
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-28
    • 1970-01-01
    相关资源
    最近更新 更多