浅谈Vue.js中ref ($refs)用法举例总结


Posted in Javascript onDecember 19, 2017

本文介绍了Vue.js中ref ($refs)用法举例总结,分享给大家,具体如下:

看Vue.js文档中的ref部分,自己总结了下ref的使用方法以便后面查阅。

一、ref使用在外面的组件上

HTML 部分

<div id="ref-outside-component" v-on:click="consoleRef">
  <component-father ref="outsideComponentRef">
  </component-father>
  <p>ref在外面的组件上</p>
</div>

js部分

var refoutsidecomponentTem={
    template:"<div class='childComp'><h5>我是子组件</h5></div>"
  };
  var refoutsidecomponent=new Vue({
    el:"#ref-outside-component",
    components:{
      "component-father":refoutsidecomponentTem
    },
    methods:{
      consoleRef:function () {
        console.log(this); // #ref-outside-component   vue实例
        console.log(this.$refs.outsideComponentRef); // div.childComp vue实例
      }
    }
  });

二、ref使用在外面的元素上

HTML部分

<!--ref在外面的元素上-->
<div id="ref-outside-dom" v-on:click="consoleRef" >
  <component-father>
  </component-father>
  <p ref="outsideDomRef">ref在外面的元素上</p>
</div>

JS部分

var refoutsidedomTem={
    template:"<div class='childComp'><h5>我是子组件</h5></div>"
  };
  var refoutsidedom=new Vue({
    el:"#ref-outside-dom",
    components:{
      "component-father":refoutsidedomTem
    },
    methods:{
      consoleRef:function () {
        console.log(this); // #ref-outside-dom  vue实例
        console.log(this.$refs.outsideDomRef); //  <p> ref在外面的元素上</p>
      }
    }
  });

三、ref使用在里面的元素上---局部注册组件

HTML部分

<!--ref在里面的元素上-->
<div id="ref-inside-dom">
  <component-father>
  </component-father>
  <p>ref在里面的元素上</p>
</div>

JS部分

var refinsidedomTem={
    template:"<div class='childComp' v-on:click='consoleRef'>" +
            "<h5 ref='insideDomRef'>我是子组件</h5>" +
         "</div>",
    methods:{
      consoleRef:function () {
        console.log(this); // div.childComp  vue实例 
        console.log(this.$refs.insideDomRef); // <h5 >我是子组件</h5>
      }
    }
  };
  var refinsidedom=new Vue({
    el:"#ref-inside-dom",
    components:{
      "component-father":refinsidedomTem
    }
  });

四、ref使用在里面的元素上---全局注册组件

HTML部分

<!--ref在里面的元素上--全局注册-->
<div id="ref-inside-dom-all">
  <ref-inside-dom-quanjv></ref-inside-dom-quanjv>
</div>

JS部分

Vue.component("ref-inside-dom-quanjv",{
    template:"<div class='insideFather'> " +
          "<input type='text' ref='insideDomRefAll' v-on:input='showinsideDomRef'>" +
          " <p>ref在里面的元素上--全局注册 </p> " +
         "</div>",
    methods:{
      showinsideDomRef:function () {
        console.log(this); //这里的this其实还是div.insideFather
        console.log(this.$refs.insideDomRefAll); // <input type="text">
      }
    }
  });

  var refinsidedomall=new Vue({
    el:"#ref-inside-dom-all"
  });

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js判断IE6/IE7/FF的代码[XMLHttpRequest]
Feb 16 Javascript
如何学习Javascript入门指导
Nov 01 Javascript
FF(火狐)浏览器无法执行window.close()解决方案
Nov 13 Javascript
浅析JavaScript中的对象类型Object
May 26 Javascript
BootStrap tooltip提示框使用小结
Oct 26 Javascript
Canvas 绘制粒子动画背景
Feb 15 Javascript
js实现登录框鼠标拖拽效果
Mar 09 Javascript
javascript 面向对象实战思想分享
Sep 07 Javascript
获取layer.open弹出层的返回值方法
Aug 20 Javascript
koa socket即时通讯的示例代码
Sep 07 Javascript
浅谈Webpack多页应用HMR卡住问题
Apr 24 Javascript
微信小程序实现比较功能的方法汇总(五种方法)
Mar 07 Javascript
Vue 2.0学习笔记之使用$refs访问Vue中的DOM
Dec 19 #Javascript
jQuery实现弹窗下底部页面禁止滑动效果
Dec 19 #jQuery
基于node.js实现微信支付退款功能
Dec 19 #Javascript
React Native之prop-types进行属性确认详解
Dec 19 #Javascript
响应式框架Bootstrap栅格系统的实例
Dec 19 #Javascript
vue.js element-ui validate中代码不执行问题解决方法
Dec 18 #Javascript
AngularJs点击状态值改变背景色的实例
Dec 18 #Javascript
You might like
盘点被央视点名过的日本动画电影 一部比一部强
2020/03/08 日漫
详解PHP中strlen和mb_strlen函数的区别
2014/03/07 PHP
tp5.1 框架路由操作-URL生成实例分析
2020/05/26 PHP
一段实现页面上的图片延时加载的js代码
2010/02/11 Javascript
如何将网页表格内容导入excel
2014/02/18 Javascript
JS中JSON对象和String之间的互转及处理技巧
2016/04/06 Javascript
利用jsonp跨域调用百度js实现搜索框智能提示
2016/08/24 Javascript
Bootstrap modal 多弹窗之叠加引起的滚动条遮罩阴影问题
2017/02/27 Javascript
JS 组件系列之Bootstrap Table 冻结列功能IE浏览器兼容性问题解决方案
2017/06/30 Javascript
深入理解vue Render函数
2017/07/19 Javascript
JavaScript异步加载问题总结
2018/02/17 Javascript
JS 使用 window对象的print方法实现分页打印功能
2018/05/16 Javascript
JavaScript函数的4种调用方法实例分析
2019/03/05 Javascript
使用Vue.set()方法实现响应式修改数组数据步骤
2019/11/09 Javascript
jQuery--遍历操作实例小结【后代、同胞及过滤】
2020/05/22 jQuery
vue 扩展现有组件的操作
2020/08/14 Javascript
python实现ftp客户端示例分享
2014/02/17 Python
python中单下划线_的常见用法总结
2018/07/10 Python
Python使用sax模块解析XML文件示例
2019/04/04 Python
pandas数据筛选和csv操作的实现方法
2019/07/02 Python
Python flask框架端口失效解决方案
2020/06/04 Python
Python sqlalchemy时间戳及密码管理实现代码详解
2020/08/01 Python
Python数据库封装实现代码示例解析
2020/09/05 Python
matplotlib 使用 plt.savefig() 输出图片去除旁边的空白区域
2021/01/05 Python
使用HTML5做的导航条详细步骤
2020/10/19 HTML / CSS
味多美官网:蛋糕订购,100%使用天然奶油
2017/11/10 全球购物
俄罗斯购买内衣网站:Trusiki
2020/08/22 全球购物
护理专科毕业生自荐书范文
2014/02/19 职场文书
感恩老师的演讲稿
2014/05/06 职场文书
员工工作能力评语
2014/12/31 职场文书
班主任寄语2015
2015/02/26 职场文书
实习生辞职信范文
2015/03/02 职场文书
标准演讲稿格式结尾应该怎么书写?
2019/07/17 职场文书
导游词之宿迁乾隆行宫
2019/10/15 职场文书
一篇文章弄懂Python关键字、标识符和变量
2021/07/15 Python
SSM VUE Axios详解
2021/10/05 Vue.js