docs: add advanced skills for Vitest, Pinia, and Vue built-ins
Add comprehensive reference documentation for: - Vitest: environments, projects/workspaces, type testing, vi utilities - Pinia: HMR, Nuxt integration, SSR setup - Vue: built-in components (Transition, Teleport, Suspense, KeepAlive) and advanced directives
This commit is contained in:
@@ -0,0 +1,70 @@
|
||||
---
|
||||
category: '@Integrations'
|
||||
---
|
||||
|
||||
# useAsyncValidator
|
||||
|
||||
Wrapper for [`async-validator`](https://github.com/yiminghe/async-validator).
|
||||
|
||||
## Install
|
||||
|
||||
```bash
|
||||
npm i async-validator@^4
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
```ts
|
||||
import { useAsyncValidator } from '@vueuse/integrations/useAsyncValidator'
|
||||
```
|
||||
|
||||
## Type Declarations
|
||||
|
||||
```ts
|
||||
export type AsyncValidatorError = Error & {
|
||||
errors: ValidateError[]
|
||||
fields: Record<string, ValidateError[]>
|
||||
}
|
||||
export interface UseAsyncValidatorExecuteReturn {
|
||||
pass: boolean
|
||||
errors: AsyncValidatorError["errors"] | undefined
|
||||
errorInfo: AsyncValidatorError | null
|
||||
errorFields: AsyncValidatorError["fields"] | undefined
|
||||
}
|
||||
export interface UseAsyncValidatorReturn {
|
||||
pass: ShallowRef<boolean>
|
||||
isFinished: ShallowRef<boolean>
|
||||
errors: ComputedRef<AsyncValidatorError["errors"] | undefined>
|
||||
errorInfo: ShallowRef<AsyncValidatorError | null>
|
||||
errorFields: ComputedRef<AsyncValidatorError["fields"] | undefined>
|
||||
execute: () => Promise<UseAsyncValidatorExecuteReturn>
|
||||
}
|
||||
export interface UseAsyncValidatorOptions {
|
||||
/**
|
||||
* @see https://github.com/yiminghe/async-validator#options
|
||||
*/
|
||||
validateOption?: ValidateOption
|
||||
/**
|
||||
* The validation will be triggered right away for the first time.
|
||||
* Only works when `manual` is not set to true.
|
||||
*
|
||||
* @default true
|
||||
*/
|
||||
immediate?: boolean
|
||||
/**
|
||||
* If set to true, the validation will not be triggered automatically.
|
||||
*/
|
||||
manual?: boolean
|
||||
}
|
||||
/**
|
||||
* Wrapper for async-validator.
|
||||
*
|
||||
* @see https://vueuse.org/useAsyncValidator
|
||||
* @see https://github.com/yiminghe/async-validator
|
||||
*/
|
||||
export declare function useAsyncValidator(
|
||||
value: MaybeRefOrGetter<Record<string, any>>,
|
||||
rules: MaybeRefOrGetter<Rules>,
|
||||
options?: UseAsyncValidatorOptions,
|
||||
): UseAsyncValidatorReturn & PromiseLike<UseAsyncValidatorReturn>
|
||||
```
|
||||
Reference in New Issue
Block a user