Vue中的$ref和$refs属性介绍与使用

╰半夏微凉° 2022-11-04 11:05 309阅读 0赞

除了自定义属性外,Vue实例还暴露一些有用的实例属性和方法,他们都有前缀$,以便和用户定义的属性和方法分开

  1. Vue中一般很少会用到直接操作DOM,但不可避免有时候需要用到,这时我们可以通过ref$refs这两个来实现
  2. 常用的属性有:
  3. 1vm.$el //获取vue实例关联的Dom元素
  4. 2: vm.$data //获取vue实例的data选项
  5. 3vm.$options //获取vue实例的自定义属性
  6. 4vm.$refs //获取vue实例中所有含有ref属性的dom元素,如果有多个,只返回最后一个。
  7. 5: vm.$ref // ref 被用来给元素或子组件注册引用信息, 引用信息将会注册在父组件的 $refs 对象上,如果是在普通的DOM元素上使用,引用指向的就是 DOM 元素,如果是在子组件上,引用就指向组件的实例
  8. ref加载普通元素上,this.$refs. 获取到的就是dom元素
  9. ref记载在子组件上,this.$refs. 获取到的就是组件实例,可使用组件的所有方法。
详细的教程请见下文链接:

Vue教程($ r e f 和 ref和 ref和refs的使用)https://cloud.tencent.com/developer/article/1479575

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  7. <title>Document</title>
  8. <script src="./lib/vue-2.4.0.js"></script>
  9. </head>
  10. <body>
  11. <div id="app">
  12. <input type="button" value="获取h3的值" @click="getElement()">
  13. <h3 id="myh3" ref="myh3" >我是一个h3</h3>
  14. <hr>
  15. <login ref='mylogin'></login>
  16. </div>
  17. <script>
  18. var login = {
  19. template: "<h3>我是login子组件</h3>",
  20. data(){
  21. return {
  22. msg: "ok"
  23. }
  24. },
  25. methods:{
  26. show(){
  27. console.log("show方法执行了...")
  28. }
  29. }
  30. }
  31. var vm = new Vue({
  32. el: "#app",
  33. data: { },
  34. methods: {
  35. getElement(){
  36. // 通过 getElementById 方式获取 DOM 对象
  37. // console.log(document.getElementById("myh3").innerHTML)
  38. // console.log(this.$refs.myh3.innerHTML)
  39. console.log(this.$refs.mylogin.msg)
  40. this.$refs.mylogin.show()
  41. }
  42. },
  43. components:{
  44. login
  45. }
  46. })
  47. </script>
  48. </body>
  49. </html>

发表评论

表情:
评论列表 (有 0 条评论,309人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Vueref:ref

    前者代表字符串xxx,后者代表变量xxx。 不加冒号表示后面是个字符串,否则表示后面是个js表达式。 ![在这里插入图片描述][watermark_type_ZmFuZ3

    相关 Vueref属性refs

    ref 被用来给DOM元素或子组件注册引用信息。引用信息会根据父组件的 $refs 对象进行注册。如果在普通的DOM元素上使用,引用信息就是元素; 如果用在子组件上,引用信息