浅谈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 相关文章推荐
JavaScript通过RegExp实现客户端验证处理程序
May 07 Javascript
jquery实现的导航固定效果
Apr 28 Javascript
javascript内置对象操作详解
Feb 04 Javascript
jquery 删除节点 添加节点 找兄弟节点的简单实现
Dec 07 Javascript
JavaScript计时器用法分析【setTimeout和clearTimeout】
Jan 18 Javascript
js 调用百度分享功能
Feb 27 Javascript
Vue中保存用户登录状态实例代码
Jun 07 Javascript
微信小程序wx:for和wx:for-item的用法详解
Apr 01 Javascript
Node.js中你不可不精的Stream(流)
Jun 08 Javascript
H5+C3+JS实现五子棋游戏(AI篇)
May 28 Javascript
简单了解小程序+node梳理登陆流程
Jun 24 Javascript
解决Angularjs异步操作后台请求用$q.all排列先后顺序问题
Nov 29 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
PHP得到mssql的存储过程的输出参数功能实现
2012/11/23 PHP
PHP的Yii框架使用中的一些错误解决方法与建议
2015/08/21 PHP
php+MySQL实现登录时验证登录名和密码是否正确
2016/05/10 PHP
对setInterval在火狐和chrome切换标签产生奇怪的效果之探索,与解决方案!
2011/10/29 Javascript
推荐40款强大的 jQuery 导航插件和教程(上篇)
2012/09/14 Javascript
jquery拖动插件(jquery.drag)使用介绍
2013/06/18 Javascript
AngularJs根据访问的页面动态加载Controller的解决方案
2015/02/04 Javascript
jQuery+html5+css3实现圆角无刷新表单带输入验证功能代码
2015/08/21 Javascript
Javascript的表单验证-揭开正则表达式的面纱
2016/03/18 Javascript
js事件驱动机制 浏览器兼容处理方法
2016/07/23 Javascript
微信小程序 wx.request(object) API详解及实例代码
2016/09/30 Javascript
详解axios在vue中的简单配置与使用
2017/05/10 Javascript
Vue 组件(component)教程之实现精美的日历方法示例
2018/01/08 Javascript
解决angularJS中input标签的ng-change事件无效问题
2018/09/13 Javascript
在Vuex使用dispatch和commit来调用mutations的区别详解
2018/09/18 Javascript
深入解析ES6中的promise
2018/11/08 Javascript
生成无限制的微信小程序码的示例代码
2019/09/20 Javascript
详解vue-router 动态路由下子页面多页共活的解决方案
2019/12/22 Javascript
Python中文件遍历的两种方法
2014/06/16 Python
Python中Django框架利用url来控制登录的方法
2015/07/25 Python
Python 错误和异常代码详解
2018/01/29 Python
Python实现读取字符串按列分配后按行输出示例
2018/04/17 Python
使用python语言,比较两个字符串是否相同的实例
2018/06/29 Python
python接口自动化(十六)--参数关联接口后传(详解)
2019/04/16 Python
flask框架单元测试原理与用法实例分析
2019/07/23 Python
pandas中read_csv的缺失值处理方式
2019/12/19 Python
python FTP批量下载/删除/上传实例
2019/12/22 Python
用什么库写 Python 命令行程序(示例代码详解)
2020/02/20 Python
Cocopanda波兰:购买化妆品、护肤品、护发和香水
2020/05/25 全球购物
党校培训思想汇报
2014/01/03 职场文书
银行实习生的自我评价
2014/01/13 职场文书
财务人员求职自荐书范文
2014/02/10 职场文书
经理任命书模板
2014/06/06 职场文书
解决sql server 数据库,sa用户被锁定的问题
2021/06/11 SQL Server
python中的3种定义类方法
2021/11/27 Python
WIN10使用IIS部署ftp服务器详细教程
2022/08/05 Servers