這個例子中為什么結果是 [li, li, li, li, li, li]呢 而不是item對應的值呢?<!DOCTYPE html><html><head>
<title></title>
<script type="text/javascript" src="vue.js"></script></head><body><div id="app">
<ul>
<li v-for="(item,index) in msg" ref=item @click=test()>{{item}}</li>
</ul></body></div><script type="text/javascript">
var test=new Vue({ el:'#app', data:{ msg: ["a","b","c","d","e","f"]
}, methods:{
test(){ console.log(this.$refs.item)
}
}
})
</script></html>
2 回答

幕布斯6054654
TA貢獻1876條經驗 獲得超7個贊
理解錯啦,ref的值從來都是元素或者組件,不會是你的a, b, c字符串的
如果你想為每個li動態生成一個ref,之后獲取點擊的item,可以用以下代碼
<ul> <li v-for="(item,index) in msg" :ref="item" @click=test(item)>{{item}}</li></ul>
test(item){ console.log(this.$refs[item]) }
添加回答
舉報
0/150
提交
取消