首页 > 其他分享 >vue-types

vue-types

时间:2024-01-17 14:16:02浏览次数:40  
标签:vue string default VueTypes props types

一、vue-types

VueTypes 是 Vue.js 的可配置prop 验证器的集合,受到 React 的启发prop-types

1、何时使用

虽然 Vue.js 中的基本 prop 验证既简单又方便,但细粒度验证在复杂组件上可能会变得冗长。VueTypes 提供了一个紧凑而流畅的界面来定义项目的 props。

 

2、使用示例

想象一个带有一组 props 的典型 Vue.js 组件:

export default {
  props: {
    id: {
      type: Number,
      default: 10,
    },
    name: {
      type: String,
      required: true,
    },
    age: {
      type: Number,
      validator(value) {
        return Number.isInteger(value)
      },
      default: 0,
    },
    nationality: String,
  },
  methods: {
    // ...
  },
}

虽然这个组件工作得很好,但编写大量的 prop 验证对象可能会变得重复。使用 VueTypes 你可以重写相同的 props,如下所示:

 
import VueTypes from 'vue-types'

export default {
  props: {
    id: VueTypes.number.def(10),
    name: VueTypes.string.isRequired,
    age: VueTypes.integer,
    nationality: VueTypes.string,
  },
  methods: {
    // ...
  },
}

 

3、单个验证器导入

从版本 2.0.0 开始,您可以导入单独的验证器以获得更简洁的语法:

import { number, string, integer } from 'vue-types'

export default {
  props: {
    id: number().def(10),
    name: string().isRequired,
    age: integer().def(0),
    nationality: string(),
  },
  methods: {
    // ...
  },
}

 

标签:vue,string,default,VueTypes,props,types
From: https://www.cnblogs.com/qtiger/p/17969878

相关文章

  • Vuex的简单理解和使用
    1、什么是Vuex?在使用vue作为框架的前端项目开发中,我们经常会碰到Vuex,那么Vuex到底是什么东西呢?根据官方文档给出的解释是:Vuex是一个专为Vue.js应用程序开发的状态管理模式+库。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。简......
  • [Typescript 5] override keyword
    OverridesAcommonmistake,thathashistoricallybeendifficultforTypeScripttoassistwithistyposwhenoverridingaclassmethodclassCar{honk(){console.log("beep")}}classTruckextendsCar{hoonk(){//OOPS!con......
  • 基于SpringBoot+Vue的校园招聘系统设计实现(源码+lw+部署文档+讲解等)
    (文章目录)前言:heartpulse:博主介绍:✌全网粉丝10W+,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌:heartpulse:......
  • Vue的优化
    Vue前端开发到第一阶段,就要开始考虑性能优化相关的要点了。这也是用来判断一名前端的水平是否优秀的一个标准。接下来这篇文章,将介绍几种在实践过程中可以用到的性能优化技巧函数型组件由于组件的生命周期处理在框架层面上十分耗时,所以,建议平常尽量使用函数型组件。这样,可以避免不......
  • Vue学习计划-Vue3--核心语法(六)路由
    1.路由【对路由的理解】【基本切换效果】Vue3中要使用vue-router的最新版本,目前是4版本路由配置文件代码如下://创建一个路由器,并暴露出去//第一步:引入createRouterimport{createRouter,createWebHistory}from'vue-router'//引入一个一个可能要呈现组件......
  • 【源码系列#06】Vue3 Diff算法
    专栏分享:vue2源码专栏,vue3源码专栏,vuerouter源码专栏,玩具项目专栏,硬核......
  • Springboot3+Vue3在进行WebSocket通讯时出现No mapping for GET或者是404
    参考:在SpringBoot中整合、使用WebSocket-spring中文网(springdoc.cn)===============================原代码(此时前端访问后端,后端会出现:NomappingforGET/wspath)前端相关代码:letsocket:WebSocket|null=nullconstsocketURL=`ws://127.0.0.1:8084/w......
  • 实现手机/PC端滑块验证(VUE+Springboot)
    思路a,通过后端,获取到图片,这个图片自己定义,随便是撒。b,通过代码把图片进行随机抠图,扣出一块,形成第二个图,该小图就是为了合并到原有的窟窿中。c,然后把两个图传到后端,保存抠出的图需要移动的距离到redis,作为验证值。d,前端根据图的位置展示底图与小图e,进行移动,完成后进行验证。......
  • VUE框架实现符合Vue3语法格式的页面与各个配置项解析------VUE框架
    <template><HelloWorld></HelloWorld><h1>{{name}}</h1><h1>{{age}}</h1><h1>{{a}}</h1><h1>{{b}}</h1><button@click="sayHello">按一下</butto......
  • 【Vue】vite+vue3 如何实现点击进入详情页/文章页
    如上图,点击标题可以进入详情页,关键代码截图如下:然后去配置路由那么组件如何从地址中接收参数呢......