多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# 自定义属性props(对象方式/验证) ## 抛出问题 上面书写的数组方式,我们可以发现一下,不利于团队协作开发。 如果工作中我们希望团队协作开发,那么我们的**msg如果期望的是只能传字符串**,而其它开发者是不确定的,可以给你写一个**数组**等等,显然是错误的。如下图,也不报错,也不提示,这显然是不正确的。 ![](https://img.kancloud.cn/87/3f/873f65f815f17194fcd5f84a84c9ad0b_1121x442.png) ``` <div id="app" class="container" style="margin-top: 100px;"> <my-alert :msg="[1,2,3]"></my-alert> <my-alert msg="完成交易"></my-alert> </div> <script src="js/vue.js"></script> <script> Vue.component('my-alert',{ props:['msg'], template:`<div class="alert alert-success" >{{msg}}</div>` }) var vm = new Vue({ el:'#app', }) </script> ``` ## props数据验证 支持**String、Number、Boolean、Array、Object、Date、Function、Symbol** ## 那么就需要我们使用对象的方式来进行验证规则 如下图,有三种方式: ![](https://img.kancloud.cn/e7/3e/e73e0a7d9d21a440e24759e687b6222d_869x658.png) ![](https://img.kancloud.cn/ac/8f/ac8fea2a633fa90a56af9e2ca9286b8f_1698x412.png) ## 注意事项 >[danger] 验证数据类型:String、Number、Boolean、Array、Object、Date、Function、Symbol注意首字母要大写,且不加引号