当前位置:   article > 正文

Vue3 通过 ref 获取DOM节点 和 通过组件实例化返回根DOM节点_vue3 ref获取组件的dom返回object

vue3 ref获取组件的dom返回object

一、模板引用,的两种写法

 获取DOM节点,属于vue 模板引用的知识点,

1. 在组件选项的文件中,模板引用方式

2. 在组合式API中模板引用发过誓

下面的案例是在 组合式API文件中使用的方式

  1. <template>
  2. <div ref="wuzi">
  3. <h1>物资仓库</h1>
  4. </div>
  5. </template>
  6. <script setup>
  7. import { ref, onMounted} from "vue";
  8. // 模板中ref的名称,必须和变量名相同,且ref函数包裹null,必须return出去
  9. const wuzi = ref(null);
  10. onMounted(() => {
  11. //打印DOM节点
  12. console.log(wuzi.value);
  13. })
  14. </script>

二、通过实例化组件返回根DOM节点

1. 组件实例化

目前Vue3组件的实例化,只能通过createApp 返回引用实例

  1. //定义具有组件选项的对象
  2. const Profile = {
  3. template: `<p class="demo">{{firstName}}</p>`,
  4. data() {
  5. return {
  6. firstName: '滕禹鑫的组件',
  7. }
  8. }
  9. }
  10. // 为Vue实例化,提供挂载的元素节点
  11. let divEle = document.createElement("div");
  12. //实例化 和 挂载,返回结果就是Vue实例
  13. let a = Vue.createApp(Profile).mount(divEle);

2. 通过实例属性 $el ,得到 该Vue实例的根DOM节点元素

  1. //定义组件
  2. const Profile = {
  3. template: `<p class="demo">{{firstName}}</p>`,
  4. data() {
  5. return {
  6. firstName: '滕禹鑫的组件',
  7. }
  8. }
  9. }
  10. // Vue组件实例化
  11. let divEle = document.createElement("div");
  12. let a = Vue.createApp(Profile).mount(divEle);
  13. //打印该实例的DOM节点
  14. let dom = a.$el;
  15. console.log(dom);

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/133890
推荐阅读
相关标签
  

闽ICP备14008679号