最近在看慕课的vue的高仿饿了么项目,视频是基于vue1.0的,所以中间有很多坑,一直想记下来~除了版本问题还想记下关于vue的一些自己经常出错的地方,予以记录和警示。
利用ref属性可以获取到dom元素或者是子组件,从而可以调用子组件的方法
注意:实例通过$refs来访问子组件,且命名规则不能为驼峰式,应为-型.
(1)当ref直接定义在dom元素上时,则通过this.$refs.name可以获取到dom对dom进行原生的操作
<div class="foodMenu" ref="food-menu">
通过this.$refs获取到dom进行操作(注意ref属性的命名不能用驼峰,同时获取的时候也是)
let menuList=this.$refs['menu-wrapper'].getElementsByClassName('menu-list-hook');
此处如果用this.$refs[“menuWrapper”]将获取不到元素
(2)通过在引用的子组件上使用ref属性实现父组件调用子组件的方法以及属性
<v-food ref="shopcart"></v-food>
调用定义在子组件中的方法show
this.$refs.shopcart.drop(target);//同时也可以调用子组件中的属性