Vee Validate 3.x,定义 ValidationFlags 类型

Vee Validate 3.x, defining ValidationFlags type

我正在尝试在 Vee-Validate 3 中查找并使用 ValidationFlags 类型。但我无法导入它。

我知道 source code here 中存在该类型。但是当我尝试像这样导入它时:

import { ValidationObserver, ValidationFlags } from "vee-validate";

它说它没有导出成员 ValidationFlags,这里有一些示例代码供参考,我正在尝试做的事情:

<template>
  <ValidationProvider v-slot="validationContext">
    <input v-model="name" :state="isValidState(validationContext)"/>
  </ValidationProvider>
</template>

<script lang="ts">
  import { ValidationObserver } from "vee-validate";

  methods: {
    isValidState({ valid, dirty }: --someTypeHere--) { // I'm getting type warning if I don't use a type here
      return valid;
    }

  }
</script>

如何为验证标志导入正确的类型并将其用于我的 isValidState 方法参数?

大多数类型没有导出,因为它们严格是内部的,不应依赖。

由于 typescript 是基于结构的,因此可以根据您的目的填写这些类型中的任何一种:

type Flags = Record<string, boolean>;

// Or

interface Flags {
  [k: string]: boolean;
}

或者您可以随时复制类型并在您的应用中使用它。