用的element-ui的框架的跑马灯组件,需求是获取img的高度,打印出来是Undedined,这是为什么?
代码如下:
<el-carousel arrow = 'always' indicator-position = "none" :height = heightNum>
<el-carousel-item v-for = "(item,index) in items" :key = "item">
<img :src = "item.bannerImgSrc" alt="" :ref = "item.name" @click = "setActiveItem(index)"/>
</el-carousel-item>
</el-carousel>
data () {
return {
items:[
{bannerImgSrc:'static/image/icon/banner01.png',name:'a'},
{bannerImgSrc:'static/image/icon/banner02.png',name:'b'},
{bannerImgSrc:'static/image/icon/code01.png',name:'c'},
{bannerImgSrc:'static/image/icon/code02.png',name:'c'},
],
}
},
mounted () {
var y = this.$refs.b.offsetHeight;
console.log(y);
},
当前组件挂载了,但你的跑马灯组件还不一定挂载。
试试 nextTick里获取。