鍍金池/ 問(wèn)答/Java  HTML/ vue的props校驗(yàn)的報(bào)錯(cuò)問(wèn)題

vue的props校驗(yàn)的報(bào)錯(cuò)問(wèn)題

<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ò)的截圖:

clipboard.png

我的個(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ò)?
希望大佬幫忙解答,謝謝

回答
編輯回答
怪痞

這里是一個(gè)正確的示例,JSFiddle

首先,如果這是一個(gè)Number類(lèi)型,那么Default賦值的時(shí)候需要給一個(gè)Number而不是String。

另一個(gè)潛在的錯(cuò)誤是value.length的使用,Number對(duì)象沒(méi)有length屬性,可以轉(zhuǎn)字符串再調(diào)用該方法

2018年8月3日 06:50