浅谈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 相关文章推荐
Jquery 表格合并的问题分享
Sep 17 Javascript
jquery图片不完全按比例自动缩小的简单代码
Jul 29 Javascript
jquery二级导航内容均分的原理及实现
Aug 13 Javascript
Javascript 绘制 sin 曲线过程附图
Aug 21 Javascript
js控制div层的叠加简单方法
Oct 15 Javascript
js遮罩效果制作弹出注册界面效果
Jan 25 Javascript
jQuery实现拖动效果的实例代码
Jun 25 jQuery
快速将Vue项目升级到webpack3的方法步骤
Sep 14 Javascript
详解vue-cli 接口代理配置
Dec 13 Javascript
了解前端理论:rscss和rsjs
May 23 Javascript
利用js-cookie实现前端设置缓存数据定时失效
Jun 18 Javascript
iview form清除校验状态的实现
Sep 19 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
很实用的一个完整email发送程序
2006/10/09 PHP
PHP可逆加密/解密函数分享
2012/09/25 PHP
php文件缓存类汇总
2014/11/21 PHP
调试WordPress中定时任务的相关PHP脚本示例
2015/12/10 PHP
Laravel SQL语句记录方式(推荐)
2016/05/26 PHP
php进程间通讯实例分析
2016/07/11 PHP
KindEditor在php环境下上传图片功能集成的方法示例
2020/07/20 PHP
一行代码告别document.getElementById
2012/06/01 Javascript
iframe的onreadystatechange事件在firefox下的使用
2014/04/16 Javascript
js实现加载更多功能实例
2016/10/27 Javascript
vue中的模态对话框组件实现过程
2018/05/01 Javascript
微信小程序实现跑马灯效果完整代码(附效果图)
2018/05/30 Javascript
JS限制输入框输入的实现代码
2018/07/02 Javascript
JS继承定义与使用方法简单示例
2020/02/19 Javascript
JS使用Chrome浏览器实现调试线上代码
2020/07/23 Javascript
[03:56]DOTA2完美大师赛趣味视频之小鸽子和Mineski打台球
2017/11/24 DOTA
ptyhon实现sitemap生成示例
2014/03/30 Python
Python的Flask框架中实现分页功能的教程
2015/04/20 Python
Django项目中实现使用qq第三方登录功能
2019/08/13 Python
Pandas 缺失数据处理的实现
2019/11/04 Python
python有序查找算法 二分法实例解析
2020/02/18 Python
python 穷举指定长度的密码例子
2020/04/02 Python
python实现爱奇艺登陆密码RSA加密的方法示例详解
2020/05/27 Python
美国最灵活的移动提供商:Tello
2017/07/18 全球购物
mysql的最长数据库名,表名,字段名可以是多长
2014/04/21 面试题
程序集与命名空间有什么不同
2014/07/25 面试题
求职简历自荐信范文
2013/10/21 职场文书
高二地理教学反思
2014/01/24 职场文书
校园演讲稿汇总
2014/05/21 职场文书
卫生标语大全
2014/06/21 职场文书
先进班集体申报材料
2014/12/26 职场文书
会议通知格式范文
2015/04/15 职场文书
2015年法务工作总结范文
2015/05/23 职场文书
安全生产标语口号
2015/12/26 职场文书
2016年社区中秋节活动总结
2016/04/05 职场文书
完美解决golang go get私有仓库的问题
2021/05/05 Golang