ref属性

ref属性被用来给元素或子组件注册引用信息(id的替代者),避免在vue中使用document.getElementById

应用在html标签上时,获取的是真实dom元素;应用在组件标签上时,获取的是组件实例对象。

示例:

  1. <template>
  2. <div id="app">
  3. <!-- Html标签上使用ref属性 -->
  4. <h1 v-text="msg" ref="title"></h1>
  5. <button ref="btn" @click="showDom">点我输出dom</button>
  6. <!-- 组件上使用ref -->
  7. <School ref="sch" />
  8. </div>
  9. </template>
  10. <script>
  11. import School from './components/School'
  12. export default {
  13. name: 'App',
  14. components: {
  15. School
  16. },
  17. data() {
  18. return {
  19. msg: 'hello'
  20. }
  21. },
  22. methods: {
  23. showDom() {
  24. // 使用this.$refs获取到当前组件配置的ref
  25. console.log(this.$refs); // 当前组件中所有的ref
  26. console.log(this.$refs.title); // 获取到ref=title所在的dom元素
  27. console.log(this.$refs.sch); // 获取到ref=sch对应的组件
  28. }
  29. },
  30. };
  31. </script>