Vue:类型 'Ref<unknown>' 不可分配给类型 'string'.ts(2322)

Vue : Type 'Ref<unknown>' is not assignable to type 'string'.ts(2322)

我正在使用 Vue3、type script、composition 和 vee-validate4 以及 Pinia 一起存储

这是来自的用户注册。

views/register

const schema = yup.object({
  email: yup.string().required().email("لطفا ! ایمیل معتبر وارد کنید ."),
  password: yup.string().required().min(8, "کلمه عبور باید حداقل هشت کاراکتر باشد ."),
});

const { errors, handleSubmit } = useForm({
  validationSchema: schema,
});

const { value: email } = useField('email');
const { value: password } = useField('password');

我这里有一个注册方法

views/register

async function add() {
  try {
    const res = await useAuthStore().register({email,password})
      } catch (err: any) {}
}

但是,这里我有一个 typescript 错误。

我的Pinia店是这样的

actions: {
    register( user:ICreateUser) {
      return AuthService.create(user).then(
        response => {
          this.status.loggedIn = false;
          return Promise.resolve(response.data);
        },
        error => {
          this.status.loggedIn = false;
          return Promise.reject(error);
        }
      );
    }
},

我如何修复 Typescript 错误?

只需将类型添加到 useField ⇒ 看看 https://github.com/logaretm/vee-validate/blob/main/packages/vee-validate/src/useField.ts#L68

尝试类似的东西。

const { value: email } = useField<string>('email')