亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

vue為什么v-for的數據在input里打印不出來?

vue為什么v-for的數據在input里打印不出來?

BIG陽 2018-12-20 18:15:21
現在遇到一個問題,我在表單里寫了一些驗證事件,在沒有v-for插入數據的時候還能驗證,但是v-for插入數據后,無論表單有沒有字符打印的都是undefined,那就意味著我寫的驗證都無效了,求解?有v-for的時候打印undefined                   <div class="edit-form" v-for="(item,index) in listData" :key="index">                    <div>                        <input type="text"  @blur="onLeast1()" ref="Least1" v-model="item.name" >                        </div>                    </div>                                onLeast1() {            if (this.$refs.Least1.value !== '') {                console.log(this.$refs.Least1.value)                return false;            } else {                console.log(this.$refs.Least1.value)                return false;            }        }//有v-for數據的時候就是undefined沒有v-for正常打印
查看完整描述

1 回答

?
蝴蝶刀刀

TA貢獻1801條經驗 獲得超8個贊

有v-for的時候,this.$refs.Least1就變成了一個數組


ref的規則:


寫在原生dom元素上,this.$refs.xx得到的是dom節點

寫在組件上,this.$refs.xx得到的是這個組件的實例

寫在v-for中,無論是單層v-for還是多層嵌套的v-for,this.$refs.xx得到的是一個數組

可以這樣改一下

你是要驗證都不能為空嗎?


onLeast1() {

    return this.$refs.Least1.every( item => item.value !== '' )

}


查看完整回答
反對 回復 2019-01-26
  • 1 回答
  • 0 關注
  • 1863 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號