> 웹 프론트엔드 > View.js > Vue3에서 DOM 노드를 얻는 방법은 무엇입니까?

Vue3에서 DOM 노드를 얻는 방법은 무엇입니까?

WBOY
풀어 주다: 2023-05-11 16:55:06
앞으로
3843명이 탐색했습니다.

1. 기본 js에서 DOM 노드를 가져옵니다.

document.querySelector(选择器)
document.getElementById(id选择器)
document.getElementsByClassName(class选择器)
....
로그인 후 복사

2. vue2에서 현재 구성 요소의 인스턴스 개체를 가져옵니다.

각 vue 구성 요소 인스턴스에는 해당 DOM을 저장하는 $refs 개체가 포함되어 있기 때문입니다. 요소 또는 구성 요소에 대한 참조. 따라서 기본적으로 구성 요소의 $refs는 빈 개체를 가리킵니다. 먼저 컴포넌트에

ref="name"

을 추가한 후 this.$refs.name을 통해 해당 요소를 가져와서 동작시키면 됩니다.

<template>
  <div class="box">
    <h2 ref="divDom">这是一个测试样例</h2>
    <button ref="but">按钮</button>
  </div>
</template>
 
<script>
 
export default {
  data() {
    return {
    }
  },
  methods: {
    showThis(){
      // h2的实例对象 
      console.log(this);
      this.$refs.divDom.style.color=&#39;yellow&#39;
      //引用到组件的实例之后,也可以调用组件上的 methods方法
      this.$refs.but.click();
    },
  },
}
</script>
로그인 후 복사
3. vue3에서 현재 구성 요소의 인스턴스 객체를 가져옵니다.

이 객체는 Vue3 프레임워크에서 비활성화되어 있으므로 this.$refs를 사용하여 사용자 정의 구성 요소 참조의 DOM 노드를 가져올 수 없습니다.

하지만 vue3에는 현재 구성 요소 인스턴스 개체

getCurrentInstance

를 반환할 수 있는 함수가 있습니다. 이 함수를 통해 개체를 얻으면 에너지를 절약할 수 있고 개체에 인터페이스에 참조가 포함되어 있는지 확인할 수 있습니다. 아아아아

위 내용은 Vue3에서 DOM 노드를 얻는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿