<div id="app"> <child :content="12"></child>
<child :text='424241'></child></div><script>
Vue.component('child',{ template:`<div>{{content}}{{text}}</div>`, props:{ content:[Number,String], text:{ type:Number, required:false, default:'我是默認(rèn)的helloworld',
validator(value){ return value.length > 5
}
}
}
}) var vm=new Vue({ el:"#app",
})</script>報(bào)錯(cuò)的截圖:我的個(gè)人理解: :text='424241' 這里的傳入方式不是傳如一個(gè)靜態(tài)數(shù)字嗎?官方API:https://cn.vuejs.org/v2/guide...可是報(bào)錯(cuò)的第一個(gè)原因卻說(shuō)這是一個(gè)字符串第二個(gè)報(bào)錯(cuò)的原因也是比較蒙,“424241”這個(gè)length不是符合validator校驗(yàn)器的條件嗎?為啥還報(bào)錯(cuò)?希望大佬幫忙解答,謝謝
1 回答

墨色風(fēng)雨
TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超6個(gè)贊
這里是一個(gè)正確的示例,JSFiddle
首先,如果這是一個(gè)Number
類型,那么Default賦值的時(shí)候需要給一個(gè)Number
而不是String
。
另一個(gè)潛在的錯(cuò)誤是value.length
的使用,Number
對(duì)象沒(méi)有length
屬性,可以轉(zhuǎn)字符串再調(diào)用該方法
添加回答
舉報(bào)
0/150
提交
取消