UNPKG

@mole-inc/nuxt-validate

Version:

Simple Nuxt input validation module using vee-validate

142 lines (105 loc) 3.08 kB
# Nuxt Validate **This is a fork of [lewyuburi/nuxt-validate](https://github.com/lewyuburi/nuxt-validate).** If you use VeeValidate 2, can you consider to use [nuxt-validate](https://github.com/lewyuburi/nuxt-validate/tree/c0879facf4abf461a0fbdbd3afe3fd9247be56ec). <p> <a href="https://www.npmjs.com/package/@mole-inc/nuxt-validate"><img src="https://badgen.net/npm/dm/@mole-inc/nuxt-validate" alt="Downloads"></a> <a href="https://www.npmjs.com/package/@mole-inc/nuxt-validate"><img src="https://badgen.net/npm/v/@mole-inc/nuxt-validate" alt="Version"></a> <a href="https://www.npmjs.com/package/@mole-inc/nuxt-validate"><img src="https://badgen.net/npm/license/@mole-inc/nuxt-validate" alt="License"></a> </p> Nuxt.js module for validations using [VeeValidate](https://github.com/logaretm/vee-validate) 3 ## Install Use npm ```sh npm i vee-validate -S npm i @mole-inc/nuxt-validate -D ``` or yarn ```sh yarn add vee-validate yarn add @mole-inc/nuxt-validate --dev ``` ## Usage Add module to nuxt.config.js ```js module.exports = { buildModules: [ ... ['nuxt-validate', { lang: 'es', nuxti18n: { locale: { 'zh-CN': 'zh_CN' } } ... // regular vee-validate options // https://github.com/logaretm/vee-validate/blob/master/docs/configuration.md }] ] } ``` ### Using top level options ```js module.exports = { buildModules: [ 'nuxt-validate' ], nuxtValidate: { lang: 'es', nuxti18n: { locale: { 'zh-CN': 'zh_CN' } } } } ``` ### Configuration #### `lang` - Default: `undefined` The `lang` option accepts the name file placed on the [locale dir](https://github.com/logaretm/vee-validate/tree/master/locale) of Vee-Validate repository without the extension. #### `rules` - Default: `undefined` If `undefined`, importing all rules. When listed from [validation-rules](https://logaretm.github.io/vee-validate/api/rules.html#validation-rules), importing it. ```js nuxti18n: { rules: ['alpha_dash', 'min'] } ``` #### `nuxti18n` - Default: `undefined` When `nuxti18n` option is set as a `true`, Vee-Validate's locale changes with nuxt-i18n's locale. If nuxt-i18n's locale and Vee-Validate's [locale](https://github.com/logaretm/vee-validate/tree/master/locale) are different, set `locale` object to convert locale code. ```js nuxti18n: { locale: { // nuxt-i18n's locale: Vee-Validate's locale 'zh-cn': 'zh_CN', 'zh-tw': 'zh_TW' } } ``` :warning: **notice:** If you use nuxt-i18n module, declare the nuxt-validate module at before it. ## Documentation Read the [official Vee-Validate documentation and demos](https://logaretm.github.io/vee-validate/). ## FAQ ### How to add custom validation methods? We recommend using plugins. `nuxt.config.js` ```js module.exports = { plugins: ["~plugins/validate.js"], } ``` `plugins/validate.js` ```js import { extend } from "vee-validate"; extend("my-validation", { message: "This {_field_} is invalid.", validate: value => { // ... return true; } }); ```