浅谈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 相关文章推荐
新浪的图片新闻效果
Jan 13 Javascript
js写一个字符串转成驼峰的实例
Jun 21 Javascript
可简单避免的三个JS发布错误的详细介绍
Aug 02 Javascript
jquery实现图片灯箱明暗的遮罩效果
Nov 15 Javascript
jquery实现在页面加载完毕后获取图片高度或宽度
Jun 16 Javascript
基于jQuery和CSS3制作响应式水平时间轴附源码下载
Dec 20 Javascript
jquery 属性选择器(匹配具有指定属性的元素)
Sep 06 Javascript
Vue2.0 从零开始_环境搭建操作步骤
Jun 14 Javascript
JS 学习总结之正则表达式的懒惰性和贪婪性
Jul 03 Javascript
vue发送ajax请求详解
Oct 09 Javascript
viewer.js一个强大的基于jQuery的图像查看插件(支持旋转、缩放)
Apr 01 jQuery
VSCode搭建React Native环境
May 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
递归列出所有文件和目录
2006/10/09 PHP
一个简洁的PHP可逆加密函数(分享)
2013/06/06 PHP
实现获取http内容的php函数分享
2014/02/16 PHP
Codeigniter中mkdir创建目录遇到权限问题和解决方法
2014/07/25 PHP
PHP实现支持SSL连接的SMTP邮件发送类
2015/03/05 PHP
支付宝服务窗API接口开发php版本
2016/07/20 PHP
PHP单例模式简单用法示例
2017/06/23 PHP
laravel添加前台跳转成功页面示例
2019/10/22 PHP
音乐播放用的的几个函数
2006/09/07 Javascript
fromCharCode和charCodeAt 方法
2006/12/27 Javascript
javascript之bind使用介绍
2011/10/09 Javascript
jquery隐藏标签和显示标签的实例
2013/11/11 Javascript
一个JavaScript防止表单重复提交的实例
2014/10/21 Javascript
vueJS简单的点击显示与隐藏的效果【实现代码】
2016/05/03 Javascript
轻松掌握JavaScript代理模式
2016/08/26 Javascript
nodejs利用http模块实现银行卡所属银行查询和骚扰电话验证示例
2016/12/30 NodeJs
Vue.js如何实现路由懒加载浅析
2017/08/14 Javascript
javascript 产生随机数的几种方法总结
2017/09/26 Javascript
vue自定义指令directive实例详解
2018/01/17 Javascript
Puppeteer 爬取动态生成的网页实战
2018/11/14 Javascript
vue-cli3.0+element-ui上传组件el-upload的使用
2018/12/03 Javascript
python文件操作整理汇总
2014/10/21 Python
教你用Type Hint提高Python程序开发效率
2016/08/08 Python
Python实现将不规范的英文名字首字母大写
2016/11/15 Python
Python实现SQL注入检测插件实例代码
2019/02/02 Python
python微信聊天机器人改进版(定时或触发抓取天气预报、励志语录等,向好友推送)
2019/04/25 Python
处理Selenium3+python3定位鼠标悬停才显示的元素
2019/07/31 Python
一篇文章搞懂python的转义字符及用法
2020/09/03 Python
python tkinter的消息框模块(messagebox,simpledialog)
2020/11/07 Python
使用python画出逻辑斯蒂映射(logistic map)中的分叉图案例
2020/12/11 Python
python 装饰器的基本使用
2021/01/13 Python
机械设计毕业生自荐信
2014/02/02 职场文书
维稳工作承诺书
2015/01/20 职场文书
2016入党积极分子党课学习心得体会
2015/10/09 职场文书
2016春季幼儿园开学寄语
2015/12/03 职场文书