0

我正在尝试让 vuelidate 与 vuex 一起工作。

无论如何要正确完成这项工作吗?它看起来像 ref 和响应式组合 api 工作,但不是 vuex 存储。

// component
setup() {
  const store = useStore();
  const user = store.state.user;
  const credentials = {
    email: computed({
      get: () => user.email,
      set: val => {
        store.commit('setUser', { ...user, email: val});
      },
    }),
    password: computed({
      get: () => user.password,
      set: val => {
        store.commit('setUser', { ...user, password: val});
      },
    }),
  };

  const validations = {
    email: {
      required,
      email,
    },
    password: {
      required,
      minLength: minLength(8),
    },
  };

  const v$ = useVuelidate(validations, credentials, { $lazy: true });

  return {
    v$,
    credentials,
  };
}

不幸的是 Vue 扩展按原样v$.$model显示null。但是,当我输入某些内容时,它实际上会启动突变并保存值,但 vuelidate 似乎无法识别它。

4

0 回答 0