浅谈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 相关文章推荐
仿猪八戒网左下角的文字滚动效果
Oct 28 Javascript
使用jquery mobile做幻灯播放效果实现步骤
Jan 04 Javascript
javascript面向对象快速入门实例
Jan 13 Javascript
JS获取字符串实际长度(包含汉字)的简单方法
Aug 11 Javascript
jQuery插件FusionWidgets实现的Cylinder图效果示例【附demo源码】
Mar 23 jQuery
微信小程序页面间通信的5种方式
Mar 31 Javascript
基于Vue.js实现tab滑块效果
Jul 23 Javascript
Router解决跨模块下的页面跳转示例
Jan 11 Javascript
vue+jquery+lodash实现滑动时顶部悬浮固定效果
Apr 28 jQuery
详解JavaScript中的函数、对象
Apr 01 Javascript
小程序getLocation需要在app.json中声明permission字段
Apr 04 Javascript
解决Vue 移动端点击出现300毫秒延迟的问题
Jul 21 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
解析如何去掉CodeIgniter URL中的index.php
2013/06/25 PHP
windows下配置apache+php+mysql时出现问题的处理方法
2014/06/20 PHP
PHP开发的微信现金红包功能示例
2017/06/29 PHP
javascript 命名空间以提高代码重用性
2008/11/13 Javascript
javascript 多种搜索引擎集成的页面实现代码
2010/01/02 Javascript
zeroclipboard复制到剪切板的flash
2010/08/04 Javascript
JQuery扩展插件Validate 1 基本使用方法并打包下载
2011/09/05 Javascript
人人网javascript面试题 可以提前实现下
2012/01/05 Javascript
javascript读写XML实现广告轮换(兼容IE、FF)
2013/08/09 Javascript
js使用正则实现ReplaceAll全部替换的方法
2014/08/22 Javascript
jquery右下角自动弹出可关闭的广告层
2015/05/08 Javascript
JavaScript中几种排序算法的简单实现
2015/07/29 Javascript
JavaScript多线程详解
2015/08/12 Javascript
超漂亮的Bootstrap 富文本编辑器summernote
2016/04/05 Javascript
JS模拟实现方法重载示例
2016/08/03 Javascript
jQuery checkbox选中问题之prop与attr注意点分析
2016/11/15 Javascript
关于Vue.js一些问题和思考学习笔记(1)
2016/12/02 Javascript
浅谈 vue 中的 watcher
2017/12/04 Javascript
javascript sort()对数组中的元素进行排序详解
2019/10/13 Javascript
解决vue项目中某一页面不想引用公共组件app.vue的问题
2020/08/14 Javascript
vue+elementUI 实现内容区域高度自适应的示例
2020/09/26 Javascript
python集合用法实例分析
2015/05/30 Python
Python实现计算最小编辑距离
2016/03/17 Python
Python基于动态规划算法解决01背包问题实例
2017/12/06 Python
Python random模块用法解析及简单示例
2017/12/18 Python
Python代码块批量添加Tab缩进的方法
2018/06/25 Python
python基于递归解决背包问题详解
2019/07/03 Python
Pycharm+Python+PyQt5使用详解
2019/09/25 Python
Python实现AES加密,解密的两种方法
2020/10/03 Python
CSS3条纹背景制作的实战攻略
2016/05/31 HTML / CSS
销售辞职报告范文
2014/01/12 职场文书
搞笑婚礼主持词
2014/03/13 职场文书
文艺有韵味的诗句(生命类、亲情类...)
2019/07/11 职场文书
十大必看国产动漫排名,魁拔上线,第二曾在日本播出
2022/03/18 国漫
天谕手游15杯全调酒配方和调酒券的获得方式
2022/04/06 其他游戏
Nginx隐藏式跳转(浏览器URL跳转后保持不变)
2022/04/07 Servers