Vue子组件prop类型和默认值

摘要:
Vue子组件prop类型和默认值1、设置prop的数据类型有什么好处?细致的prop定义有两个好处:a、它们写明了组件的API,所以很容易看懂组件的用法;b、在开发环境下,如果向一个组件提供格式不正确的prop,Vue将会告警,以帮助你捕获潜在的错误来源。==-1}}}###注意props会在组件实例创建之前进行校验,所以在default或validator函数里,诸如data、computed或methods等实例属性还无法使用。
Vue子组件prop类型和默认值

1、设置prop的数据类型有什么好处?

细致的 prop 定义有两个好处:

a、它们写明了组件的 API,所以很容易看懂组件的用法;

b、在开发环境下,如果向一个组件提供格式不正确的 prop,Vue 将会告警,以帮助你捕获潜在的错误来源。

例如:

props:['status'],

#good:

props:{
    status:String
}

#better:

//更好的做法!
props: {
  status: {
    type: String,
    required: true,
    validator: function(value) {
      return[
        'syncing',
        'synced',
        'version-conflict',
        'error'].indexOf(value) !== -1}
  }
}

###注意 props 会在组件实例创建之前进行校验,所以在 default 或 validator 函数里,诸如 data、computed 或 methods 等实例属性还无法使用。

2、数据类型为Array、Function、Object时的写法

//接收的数据类型为数组
arr: {
type: Array,
default: () =>{
return[]
}
},

//接收的数据类型为函数
fun: {
type: Function,
default: () => () =>{}
},

//接收的数据类型为对象
obj: {
type: Object,
default: () => ({})  //这里是注意是括弧,必须是括弧。
}

免责声明:文章转载自《Vue子组件prop类型和默认值》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Javaweb统计在线人数的小栗子如何创建Node.js Web服务器下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

vue进行代码排序

<template> <div> <div> <h3>排序 </h3> <button @click="orderByAge(0)">默认</button> <button @click="orderByAge(2)">...

Vue 百度地图的两种使用方式并且动态添加标注

第一种使用  vue-baidu-map 的方法 首先 npm install vue-baidu-map --save1 全局引入在main.js 里面引入 import BaiduMap from 'vue-baidu-map' Vue.use(BaiduMap, {ak:'2Zvw46SfEejaTIckyE8SwSWxcUkALsxi'})...

Vue之render函数

render函数是vue中的一个重要函数 文档地址:https://cn.vuejs.org/v2/api/#render 类型 (createElement: () => VNode) => VNode 详细 字符串模板的代替方案,允许你发挥 JavaScript 最大的编程能力。该渲染函数接收一个 createElement 方法作为第一个...

vue实现PC端分辨率适配

lib-flexible + px2rem Loader lib-flexible 阿里伸缩布局方案 px2rem-loader:px转rem; 依赖 首先需要安装 vue-cli 脚手架,这里我安装的是 cli3。 项目初始化完成后,在项目目录中安装 lib-flexible 和 px2rem-loader。 npm install lib-flex...

vue前端工程化

今日目标 1.能够了解模块化的相关规范 2.了解webpack3.了解使用Vue单文件组件4.能够搭建Vue脚手架5.掌握Element-UI的使用 1.模块化的分类 A.浏览器端的模块化 1).AMD(Asynchronous Module Definition,异步模块定义)代表产品为:Require.js2).CMD(Common Module D...

基于vue实现搜索高亮关键字

有一个需求是在已有列表中搜索关键词,然后在列表中展示含有相关关键字的数据项并且对关键字进行高亮显示,所以该需求需要解决的就两个问题: 1.搜索关键词过滤列表数据 2.每个列表高亮关键字 ps: 此问题基于数组对象,其他数据类型也可参考此思路。 关键词搜索:过滤数据很简单,无非就是监听search,对源数据过滤即可,贴一下代码: 1 const search...