웹 프론트엔드 View.js Vue3의 라이프사이클 후크 기능에 대한 자세한 설명: Vue3 라이프사이클 적용에 대한 포괄적인 숙달

Vue3의 라이프사이클 후크 기능에 대한 자세한 설명: Vue3 라이프사이클 적용에 대한 포괄적인 숙달

Jun 19, 2023 am 08:12 AM
vue 수명주기 후크 기능

Vue3의 라이프사이클 후크 기능에 대한 자세한 설명: Vue3 라이프사이클 애플리케이션의 포괄적인 숙달

인기 있는 JavaScript 프레임워크인 Vue는 항상 폭넓은 관심과 사랑을 받아왔습니다. Vue3의 출시와 함께 라이프사이클 후크 기능도 일부 변경 및 최적화되었습니다. Vue3의 라이프사이클 후크 기능을 이해하는 것은 프런트엔드 개발자에게 매우 중요합니다. 이번 글에서는 Vue3의 Life Cycle Hook 기능과 그 적용에 대해 자세히 소개하겠습니다.

Vue3의 라이프 사이클 후크 기능

Vue3의 라이프 사이클 후크 기능도 생성, 마운트, 업데이트, 소멸의 4단계로 나뉩니다. 아래에서는 Vue3의 4단계 Life Cycle Hook 기능과 사용법을 자세히 소개하겠습니다.

생성 단계

생성 단계에서 Vue3는 setup()onBeforeMount()라는 두 가지 수명 주기 후크 기능을 제공합니다. setup()onBeforeMount()

setup()

setup()是Vue3引入的新的生命周期钩子函数,在Vue3中代码中必须要有这个函数,setup()函数会在组件初始化的时候执行,其主要目的是用于设置组件的数据和方法等。

setup()函数的使用方式与Vue2.x中的datamethods类似,我们可以在setup()函数中声明组件需要使用的数据和方法,如下所示:

<template>
  <div>{{ message }}</div>
</template>

<script>
export default {
  setup() {
    const message = 'Hello, Vue3!'
    return {
      message
    }
  }
}
</script>
로그인 후 복사

上面的例子中,我们使用了const关键字声明了一个名为message的变量,该变量的值为'Hello, Vue3!',然后将其返回,在模板中使用{{ message }}就可以渲染出文本内容。

onBeforeMount()

onBeforeMount()生命周期钩子函数与Vue2.x中的beforeMount()类似,表示组件在挂载到DOM之前的事件,它会在setup()函数执行之后执行。

下面是一个使用onBeforeMount()的例子:

<template>
  <div>{{ message }}</div>
</template>

<script>
export default {
  setup() {
    const message = 'Hello, Vue3!'
    return {
      message
    }
  },
  onBeforeMount() {
    console.log('组件挂载前执行')
  }
}
</script>
로그인 후 복사

上面的例子中,onBeforeMount()函数会在组件模板挂载到DOM之前执行,在控制台输出 组件挂载前执行

挂载阶段

在挂载阶段中,Vue3提供了两个生命周期钩子函数:onMounted()onBeforeUpdate()

onMounted()

onMounted()与Vue2.x中的mounted()类似,表示组件挂载到DOM后的事件,它会在setup()函数执行之后执行。

下面是一个使用onMounted()的例子:

<template>
  <div ref="box">{{ message }}</div>
</template>

<script>
import { onMounted, ref } from 'vue'

export default {
  setup() {
    const message = ref('Hello, Vue3!')

    onMounted(() => {
      console.log('组件已经挂载到DOM上')
      console.log(this.$refs.box)
    })

    return {
      message
    }
  }
}
</script>
로그인 후 복사

上面的例子中,我们使用ref函数创建了一个message变量,并在模板中使用{{ message }}渲染出文本,然后使用onMounted()函数,在组件挂载之后输出 组件已经挂载到DOM上,以及组件中的div元素的引用。

onBeforeUpdate()

onBeforeUpdate()与Vue2.x中的beforeUpdate()类似,表示组件在更新之前的事件,它会在组件的状态发生改变之后、视图开始重新渲染之前执行。

下面是一个使用onBeforeUpdate()的例子:

<template>
  <div>{{ message }}</div>
  <button @click="changeMessage">修改消息</button>
</template>

<script>
import { onBeforeUpdate, ref } from 'vue'

export default {
  setup() {
    const message = ref('Hello, Vue3!')

    const changeMessage = () => {
      message.value = 'Hello, World!'
    }

    onBeforeUpdate(() => {
      console.log('组件即将更新,当前消息为:' + message.value)
    })

    return {
      message,
      changeMessage
    }
  }
}
</script>
로그인 후 복사

上面的例子中,我们使用ref函数创建了一个message变量,并在模板中使用{{ message }}渲染出文本,然后使用onBeforeUpdate()函数,在组件更新之前输出当前消息的值。

更新阶段

在更新阶段中,Vue3提供了两个生命周期钩子函数:onUpdated()onDeactivated()

onUpdated()

onUpdated()与Vue2.x中的updated()类似,表示组件在更新之后的事件,它会在组件的状态发生改变之后、视图重新渲染之后执行。

下面是一个使用onUpdated()的例子:

<template>
  <div>{{ message }}</div>
  <button @click="changeMessage">修改消息</button>
</template>

<script>
import { onUpdated, ref } from 'vue'

export default {
  setup() {
    const message = ref('Hello, Vue3!')

    const changeMessage = () => {
      message.value = 'Hello, World!'
    }

    onUpdated(() => {
      console.log('组件已更新,当前消息为:' + message.value)
    })

    return {
      message,
      changeMessage
    }
  }
}
</script>
로그인 후 복사

上面的例子中,我们使用ref函数创建了一个message变量,并在模板中使用{{ message }}渲染出文本,然后使用onUpdated()函数,在组件更新之后输出当前消息的值。

onDeactivated()

onDeactivated()与Vue2.x中的deactivated()类似,表示组件被激活后的事件,它会在组件从激活状态切换到非激活状态时执行。

下面是一个使用onDeactivated()的例子:

<template>
  <div>{{ message }}</div>
</template>

<script>
import { onDeactivated, ref } from 'vue'

export default {
  setup() {
    const message = ref('Hello, Vue3!')

    onDeactivated(() => {
      console.log('组件被激活')
    })

    return {
      message
    }
  }
}
</script>
로그인 후 복사

上面的例子中,我们使用ref函数创建了一个message变量,并在模板中使用{{ message }}渲染出文本,然后使用onDeactivated()函数,在组件被激活时输出 组件被激活

销毁阶段

在销毁阶段中,Vue3提供了一个生命周期钩子函数:onUnmounted()

onUnmounted()

setup()🎜🎜setup()은 Vue3에서 도입한 새로운 라이프 사이클 후크 함수입니다. 이 함수는 Vue3의 코드인 setup에 포함되어야 합니다. () 함수는 컴포넌트가 초기화될 때 실행됩니다. 주요 목적은 컴포넌트의 데이터와 메소드를 설정하는 것입니다. 🎜🎜 setup() 함수의 사용법은 Vue2.x의 datamethods와 유사합니다. setup()을 사용할 수 있습니다. 아래 표시된 대로 구성 요소가 함수에서 사용해야 하는 데이터와 메서드를 선언합니다. 🎜
<template>
  <div>{{ message }}</div>
</template>

<script>
import { onUnmounted, ref } from 'vue'

export default {
  setup() {
    const message = ref('Hello, Vue3!')

    onUnmounted(() => {
      console.log('组件被销毁')
    })

    return {
      message
    }
  }
}
</script>
로그인 후 복사
로그인 후 복사
🎜위 예에서는 const 키워드를 사용하여 message< /code> 변수에서 이 변수의 값은 <code>'Hello, Vue3!'이고 이를 반환한 다음 템플릿에서 {{ message }}를 사용하여 텍스트 콘텐츠를 렌더링합니다. 🎜🎜onBeforeMount()🎜🎜onBeforeMount()수명 주기 후크 기능은 Vue2.x의 beforeMount()와 유사합니다. 컴포넌트가 정지 중입니다. DOM에 로드되기 전의 이벤트는 setup() 함수가 실행된 후에 실행됩니다. 🎜🎜다음은 onBeforeMount()를 사용한 예입니다. 🎜rrreee🎜위 예에서는 컴포넌트 템플릿이 마운트되기 전에 onBeforeMount() 함수가 실행됩니다. 콘솔은 구성요소 마운트 전에 실행됨을 출력합니다. 🎜🎜마운팅 단계🎜🎜마운트 단계에서 Vue3는 onMounted()onBeforeUpdate()라는 두 가지 수명 주기 후크 기능을 제공합니다. 🎜🎜onMounted()🎜🎜onMounted()는 Vue2.x의 mounted()와 유사하며 구성 요소가 마운트되어 있음을 나타냅니다. DOM 이벤트의 경우 setup() 함수가 실행된 후에 실행됩니다. 🎜🎜다음은 onMounted()를 사용한 예입니다. 🎜rrreee🎜위 예에서는 ref 함수를 사용하여 메시지를 생성했습니다. > 변수를 사용하고 템플릿에서 {{ message }}를 사용하여 텍스트를 렌더링한 다음 onMounted() 함수를 사용하여 구성 요소가 마운트된 것을 출력합니다. DOM의 에 대한 참조 및 구성 요소의 div 요소에 대한 참조입니다. 🎜🎜onBeforeUpdate()🎜🎜onBeforeUpdate()는 구성 요소가 실행되기 전의 이벤트를 나타내는 Vue2.x의 beforeUpdate()와 유사합니다. 업데이트됨 구성 요소의 상태가 변경된 후 뷰가 다시 렌더링되기 전에 실행됩니다. 🎜🎜다음은 onBeforeUpdate()를 사용한 예입니다. 🎜rrreee🎜위 예에서는 ref 함수를 사용하여 메시지를 생성했습니다. > 변수를 사용하고 템플릿에서 {{ message }}를 사용하여 텍스트를 렌더링한 다음 onBeforeUpdate() 함수를 사용하여 현재 메시지의 값을 구성 요소가 업데이트되었습니다. 🎜🎜업데이트 단계🎜🎜업데이트 단계에서 Vue3는 onUpdated()onDeactivated()라는 두 가지 수명 주기 후크 함수를 제공합니다. 🎜🎜onUpdated()🎜🎜onUpdated()는 Vue2.x의 updated()와 유사합니다. 이는 구성 요소가 실행된 후의 이벤트를 나타냅니다. 업데이트됩니다. 구성 요소의 상태가 변경되고 뷰가 다시 렌더링된 후에 실행됩니다. 🎜🎜다음은 onUpdated()를 사용한 예입니다. 🎜rrreee🎜위 예에서는 ref 함수를 사용하여 메시지를 생성했습니다. > 변수를 사용하고 템플릿에서 {{ message }}를 사용하여 텍스트를 렌더링한 다음 onUpdated() 함수를 사용하여 현재 메시지의 값을 출력합니다. 구성 요소가 업데이트되었습니다. 🎜🎜onDeactivated()🎜🎜onDeactivated()는 Vue2.x의 deactivated()와 유사하며 구성 요소가 활성화된 후 이벤트를 나타냅니다. . 구성 요소가 활성 상태에서 비활성 상태로 전환될 때 실행됩니다. 🎜🎜다음은 onDeactivated()를 사용한 예입니다. 🎜rrreee🎜위 예에서는 ref 함수를 사용하여 메시지를 생성했습니다. > 변수를 사용하고 템플릿에서 {{ message }}를 사용하여 텍스트를 렌더링한 다음 onDeactivated() 함수를 사용하여 활성화된 구성 요소</code를 출력합니다. > 구성요소가 활성화된 경우>. 🎜🎜파괴 단계🎜🎜파괴 단계에서 Vue3는 수명 주기 후크 기능인 <code>onUnmounted()를 제공합니다. 🎜🎜onUnmounted()🎜

onUnmounted()与Vue2.x中的beforeDestroy()类似,表示组件销毁的事件,它会在组件被销毁之前执行。

下面是一个使用onUnmounted()的例子:

<template>
  <div>{{ message }}</div>
</template>

<script>
import { onUnmounted, ref } from 'vue'

export default {
  setup() {
    const message = ref('Hello, Vue3!')

    onUnmounted(() => {
      console.log('组件被销毁')
    })

    return {
      message
    }
  }
}
</script>
로그인 후 복사
로그인 후 복사

上面的例子中,我们使用ref函数创建了一个message变量,并在模板中使用{{ message }}渲染出文本,然后使用onUnmounted()函数,在组件被销毁时输出 组件被销毁

总结

本文介绍了Vue3中的生命周期钩子函数,它们包括创建阶段的setup()onBeforeMount(),挂载阶段的onMounted()onBeforeUpdate(),更新阶段的onUpdated()onDeactivated(),以及销毁阶段的onUnmounted()。掌握这些生命周期钩子函数,可以帮助我们更好地理解Vue3组件的生命周期,并且在开发Vue3应用时更加得心应手。

위 내용은 Vue3의 라이프사이클 후크 기능에 대한 자세한 설명: Vue3 라이프사이클 적용에 대한 포괄적인 숙달의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

vue.js로 JS 파일을 참조하는 방법 vue.js로 JS 파일을 참조하는 방법 Apr 07, 2025 pm 11:27 PM

vue.js에서 JS 파일을 참조하는 세 가지 방법이 있습니다. & lt; script & gt; 꼬리표;; mounted () 라이프 사이클 후크를 사용한 동적 가져 오기; Vuex State Management Library를 통해 수입.

Vue는 천막/텍스트 스크롤 효과를 인식합니다 Vue는 천막/텍스트 스크롤 효과를 인식합니다 Apr 07, 2025 pm 10:51 PM

CSS 애니메이션 또는 타사 라이브러리를 사용하여 VUE에서 Marquee/Text Scrolling Effects를 구현하십시오. 이 기사는 CSS 애니메이션 사용 방법을 소개합니다. & lt; div & gt; CSS 애니메이션을 정의하고 오버플로를 설정하십시오 : 숨겨진, 너비 및 애니메이션. 키 프레임을 정의하고 변환을 설정하십시오 : Translatex () 애니메이션의 시작과 끝에서. 지속 시간, 스크롤 속도 및 방향과 같은 애니메이션 속성을 조정하십시오.

게으른 부하 vue의 의미는 무엇입니까? 게으른 부하 vue의 의미는 무엇입니까? Apr 07, 2025 pm 11:54 PM

vue.js에서 게으른 로딩을 사용하면 필요에 따라 부품 또는 리소스를 동적으로로드 할 수 있으므로 초기 페이지로드 시간을 줄이고 성능을 향상시킵니다. 특정 구현 방법에는 & lt; keep-alive & gt를 사용하는 것이 포함됩니다. & lt; 구성 요소는 & gt; 구성 요소. 게으른 하중은 FOUC (Splash Screen) 문제를 일으킬 수 있으며 불필요한 성능 오버 헤드를 피하기 위해 게으른 하중이 필요한 구성 요소에만 사용해야합니다.

Vue에서 부트 스트랩을 사용하는 방법 Vue에서 부트 스트랩을 사용하는 방법 Apr 07, 2025 pm 11:33 PM

vue.js에서 bootstrap 사용은 5 단계로 나뉩니다 : Bootstrap 설치. main.js.의 부트 스트랩 가져 오기 부트 스트랩 구성 요소를 템플릿에서 직접 사용하십시오. 선택 사항 : 사용자 정의 스타일. 선택 사항 : 플러그인을 사용하십시오.

Vue에서 시계를 사용하는 방법 Vue에서 시계를 사용하는 방법 Apr 07, 2025 pm 11:36 PM

vue.js의 시계 옵션을 사용하면 개발자가 특정 데이터의 변경 사항을들을 수 있습니다. 데이터가 변경되면 콜백 기능을 트리거하여 업데이트보기 또는 기타 작업을 수행합니다. 구성 옵션에는 즉시 콜백을 실행할지 여부와 DEEP를 지정하는 즉시 포함되며, 이는 객체 또는 어레이에 대한 변경 사항을 재귀 적으로 듣는 지 여부를 지정합니다.

VUE 구성 요소 통과 값은 무엇을 의미합니까? VUE 구성 요소 통과 값은 무엇을 의미합니까? Apr 07, 2025 pm 11:51 PM

VUE 구성 요소 전달 값은 구성 요소간에 데이터와 정보를 전달하는 메커니즘입니다. 속성 (소품) 또는 이벤트를 통해 구현할 수 있습니다. 소품 : 구성 요소에서 수신 할 데이터를 선언하고 부모 구성 요소에서 데이터를 전달합니다. 이벤트 : $ Emit 메소드를 사용하여 이벤트를 트리거하고 V-ON 지시문을 사용하여 부모 구성 요소에서 듣습니다.

Vue Pagination 사용 방법 Vue Pagination 사용 방법 Apr 08, 2025 am 06:45 AM

Pagination은 큰 데이터 세트를 작은 페이지로 나누어 성능 및 사용자 경험을 향상시키는 기술입니다. VUE에서 다음 내장 방법을 페이징에 사용할 수 있습니다. 총 페이지 수를 계산하십시오 : TotalPages () Traversal 페이지 번호 : V-For Directive 현재 페이지를 설정하려면 : CurrentPage 현재 페이지 데이터 가져 오기 : currentPagedAta ()

VUE 버전을 쿼리하는 방법 VUE 버전을 쿼리하는 방법 Apr 07, 2025 pm 11:24 PM

Vue DevTools를 사용하여 브라우저 콘솔에서 vue 탭을 보면 VUE 버전을 쿼리 할 수 ​​있습니다. npm을 사용하여 "npm list -g vue"명령을 실행하십시오. package.json 파일의 "종속성"객체에서 vue 항목을 찾으십시오. Vue Cli 프로젝트의 경우 "vue -version"명령을 실행하십시오. & lt; script & gt에서 버전 정보를 확인하십시오. vue 파일을 나타내는 html 파일의 태그.

See all articles