Vue的子组件props怎么设置多个校验类型
本篇内容主要讲解“Vue的子组件props怎么设置多个校验类型”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Vue的子组件props怎么设置多个校验类型”吧!
vue子组件props设置多个校验值
1. type使用 | 进行隔开
props: {
iconClass: {
type: String | null,
required: true,
default: ""
}
},
2. 使用数组
props: {
iconClass: [String , null]
},
3. 使用validator校验函数
props: {
iconClass: {
validator: (value)=> {
const getResult = Object.prototype.toString.call(value)
if(getResult === "[object Null]" || getResult === "[object String]") return true;
},
required: true,
default: ""
},
}
Vue组件参数校验
在vue中,当父组件向子组件传递值时.子组件可以对传递过来的值进行参数校验.
首先我们定义一个子组件child,接受父组件传递过来的值content.
<child :content="1"></child>
Vue.component('child',{
props:['content'],
template: "<div>{{content}}</div>",
})
注意但我们在content前面加上:,它会认为这是js表达式,所以认为"1"是Number类型而不是String类型.
参数校验一
限定参数的类型
<child :content="1"></child>
Vue.component('child',{
props:{
content: [String,Number], //这样就限制了参数的类型为String或者Number.
},
template: "<div>{{content}}</div>",
})
如果不满足则会报[Vue warn]: Invalid prop: type check failed for prop “content”. Expected String, got Number.
参数校验二
限定参数的类型,是否必须,默认值
Vue.component('child',{
props:{
content:{
type:Number, //限制参数的类型为Number
default:100, //设置参数的默认值为100
required:false, //是否必须
}
},
template: "<div>{{content}}</div>",
})
参数校验三
自定义校验规则
Vue.component('child',{
props:{
content:{
type:Number,
default:100,
required:false,
validator:function(value){ //自定义校验的规则
return value>5;
}
}
},
template: "<div>{{content}}</div>",
})
相关内容
这些是最新的
热门排行
- THINKPHP5+GatewayWorker+Workerman 开发在线客服系统
- 在手机浏览器网页中点击链接跳转到微信界面的方法
- 尊云网站目录系统 ThinkPHP5网站分类目录程序 v2.2.221011
- CentOS 7安装shadowsock(一键安装脚本)
- AdminTemplate 基于LayUI 2.4.5实现的网站后台管理模板
- 用NW.js(node-webkit)开发多平台的桌面客户端
- PHP生成随机昵称/用户名
- THINKPHP5网站分类目录程序 尊云网站目录系统
- 织梦(DEDECMS)微信支付接口 微信插件
- 基于LayUI开发的 网站后台管理模板 BeginnerAdmin
- 响应式后台网站模板 - AMA.ADMIN
- layuiAdmin后台管理模板 Iframe版
- LayUI 1.0.9 升级 至 LayUI 2.1.4 方法
- 简洁清爽的会员中心模板
- jQuery幸运大转盘抽奖活动代码