찾다
웹 프론트엔드View.jsvue 라이프사이클 후크 기능이 무엇인지, 언제 트리거되는지 이야기해 보겠습니다.

이 글에서는 vue에 대한 관련 지식을 제공합니다. vue 라이프 사이클 후크 기능이 무엇인지, 언제 트리거되는지를 주로 소개합니다. vue 라이프 사이클은 구성 요소의 탄생부터 소멸까지의 전체 주기입니다. 함께하면 모두에게 도움이 되기를 바랍니다.

vue 라이프사이클 후크 기능이 무엇인지, 언제 트리거되는지 이야기해 보겠습니다.

【관련 권장사항: javascript 비디오 튜토리얼, vue.js tutorial

vue 라이프사이클 후크 기능

vue 라이프사이클은 컴포넌트의 탄생부터 죽음까지의 완전한 순환입니다

Main 포함 다음 4단계: 생성, 마운트, 업데이트, 파기

  • 생성 전: beforeCreate, 생성 후: createdbeforeCreate, 创建后:created
  • 挂载前:beforeMount, 挂载后:mounted
  • 更新前:beforeUpdate, 更新后:updated
  • 销毁前:beforeDestroy, 销毁后:destroyed

我平时用的比较多的钩了是created和mounted,created用于获取后台数据,mounted用于dom挂载完后做一些dom操作,以及初始化插件等.beforeDestroy用户清除定时器以及解绑事件等,

另外还新增了使用内置组件 keep-alive 来缓存实例,而不是频繁创建和销毁(开销大)

  • actived 实例激活
  • deactived 实例失效

以下为详解版

大家理解就ok:

生命周期钩子函数(11个)Function(类型),标注蓝色的那个是属于类型的意思。

  • beforeCreate Function 在实例初始化之后,数据观测 (data observer) 和 event/watcher 事件配置之前被调用。

  • created Function 在实例创建完成后被立即调用。在这一步,实例已完成以下的配置:数据观测 (data observer), 属性和方法的运算,watch/event 事件回调。然而,挂载阶段还没开始,$el 属性目前不可见。

  • beforeMount Function 在挂载开始之前被调用:相关的 render 函数首次被调用。

  • mounted Function el 被新创建的 vm.el 替换,并挂载到实例上去之后调用该钩子。如果 root 实例挂载了一个文档内元素,当 mounted 被调用时 vm.$el 也在文档内。

  • beforeUpdate Function 数据更新时调用,发生在虚拟 DOM 打补丁之前。这里适合在更新之前访问现有的 DOM,比如手动移除已添加的事件监听器。该钩子在服务器端渲染期间不被调用,因为只有初次渲染会在服务端进行。

  • updated Function 由于数据更改导致的虚拟 DOM 重新渲染和打补丁,在这之后会调用该钩子。

  • activated Function keep-alive 组件激活时调用。该钩子在服务器端渲染期间不被调用。

  • deactivated Function keep-alive 组件停用时调用。该钩子在服务器端渲染期间不被调用。

  • beforeDestroy Function 实例销毁之前调用。在这一步,实例仍然完全可用。该钩子在服务器端渲染期间不被调用。

  • destroyed Function Vue 实例销毁后调用。调用后,Vue 实例指示的所有东西都会解绑定,所有的事件监听器会被移除,所有的子实例也会被销毁。该钩子在服务器端渲染期间不被调用。

  • errorCaptured
  • 마운트 전: beforeMount code>, 마운트 후: <code>mounted

업데이트 전: beforeUpdate, 업데이트 후: 업데이트

파괴 전: beforeDestroy code>, after destroy: <code>destroyed 제가 주로 사용하는 Hooks는 생성되어 마운트됩니다. , 그리고 플러그인 등을 초기화합니다. beforeDestroy 사용자는 타이머 및 이벤트 바인딩 해제 등을 지웁니다.

또한 잦은 생성 및 삭제 대신 캐시 인스턴스에 내장 구성 요소 연결 유지 사용을 추가합니다(높은 오버헤드).

활성화됨인스턴스 활성화비활성화인스턴스 무효화

다음은 자세한 버전입니다

이해하시면 괜찮습니다.

라이프 사이클 후크 기능 (11) 기능(Type) 파란색으로 표시된 것은 해당 유형에 속함을 의미합니다. 🎜🎜🎜🎜beforeCreate 함수는 인스턴스 초기화 후, 데이터 관찰자 및 이벤트/감시자 이벤트 구성 전에 호출됩니다. 🎜🎜🎜🎜created 인스턴스가 생성된 후 즉시 함수가 호출됩니다. 이 단계에서 인스턴스는 데이터 관찰자, 속성 및 메서드에 대한 작업, 감시/이벤트 이벤트 콜백 구성을 완료했습니다. 그러나 마운트 단계가 아직 시작되지 않았으며 $el 속성이 현재 표시되지 않습니다. 🎜🎜🎜🎜beforeMount 마운팅이 시작되기 전에 함수가 호출됩니다. 해당 렌더링 함수가 처음으로 호출됩니다. 🎜🎜🎜🎜mounted 함수 el이 새로 생성된 vm.el로 대체되고, 인스턴스에 마운트된 후 Hook이 호출됩니다. 루트 인스턴스가 문서 내 요소를 마운트하는 경우 마운트가 호출될 때 vm.$el도 문서에 있습니다. 🎜🎜🎜🎜beforeUpdate 함수는 가상 DOM이 패치되기 전에 데이터가 업데이트될 때 호출됩니다. 추가된 이벤트 리스너를 수동으로 제거하는 등 업데이트하기 전에 기존 DOM에 액세스하는 데 적합합니다. 서버측에서는 초기 렌더링만 발생하므로 서버측 렌더링 중에는 이 후크가 호출되지 않습니다. 🎜🎜🎜🎜updated 함수 이 후크는 데이터 변경으로 인해 가상 DOM이 다시 렌더링되고 패치된 후에 호출됩니다. 🎜🎜🎜🎜activated 구성 요소가 활성화되면 연결 유지 기능이 호출됩니다. 이 후크는 서버측 렌더링 중에는 호출되지 않습니다. 🎜🎜🎜🎜deactivated 구성 요소가 비활성화되면 연결 유지 기능이 호출됩니다. 이 후크는 서버측 렌더링 중에는 호출되지 않습니다. 🎜🎜🎜🎜beforeDestroy 인스턴스가 소멸되기 전에 함수가 호출됩니다. 이 단계에서는 인스턴스를 여전히 완전히 사용할 수 있습니다. 이 후크는 서버측 렌더링 중에는 호출되지 않습니다. 🎜🎜🎜🎜destroyed Vue 인스턴스가 파괴된 후 함수가 호출됩니다. 호출되면 Vue 인스턴스가 가리키는 모든 것이 바인딩 해제되고 모든 이벤트 리스너가 제거되며 모든 하위 인스턴스가 삭제됩니다. 이 후크는 서버측 렌더링 중에는 호출되지 않습니다. 🎜🎜🎜errorCaptured (2.5.0+의 새로운 기능) (err: Error, vm: Component, info: string) => ?boolean 하위 구성 요소에서 오류를 캡처할 때 호출됩니다. 이 후크는 오류 개체, 오류가 발생한 구성 요소 인스턴스, 오류 소스에 대한 정보가 포함된 문자열 등 세 가지 매개 변수를 받습니다. 이 후크는 오류가 더 위쪽으로 전파되는 것을 방지하기 위해 false를 반환할 수 있습니다. 🎜🎜🎜탑재 및 활성화된 라이프 사이클의 사용 및 함정 🎜🎜🎜🎜activated🎜🎜🎜🎜 활성화에 관해 말하자면, 연결을 껐다가 다시 켤 때 호출되는 연결 유지를 언급해야 합니다. (Life Cycle Hook 기능으로 이해하시면 됩니다. 사용법은 동일합니다.) 🎜🎜🎜mounted🎜🎜🎜는 인스턴스가 마운트된 후 호출을 의미합니다. 연결 유지가 없으면 해당 컴포넌트가 한 번만 트리거됩니다. 다시 전환할 때마다 연결 유지 비활성 구성 요소 인스턴스가 캐시되므로 한 번만 트리거된다고 말할 수 있습니다. 따라서 일부 데이터 요청의 경우 여기에 요청을 작성하고 요청을 활성화하여 돌아올 때 계속 새 데이터를 요청할 수 있도록 해야 하는 경우가 많습니다. 🎜🎜Step into the Trap🎜🎜1. 여기서 키워드 중 하나는 $refs를 사용하는 경우 주의해야 한다는 의미입니다. 🎜🎜2.mounted가 먼저 실행되고, 처음 진입 시 둘 다 함께 실행됩니다🎜

PS

keep-alive에는 매우 다양한 용도가 있습니다.

【관련 권장 사항: javascript 비디오 튜토리얼, vue.js 튜토리얼

위 내용은 vue 라이프사이클 후크 기능이 무엇인지, 언제 트리거되는지 이야기해 보겠습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 脚本之家에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
vue.js and React : 주요 차이점 이해vue.js and React : 주요 차이점 이해Apr 10, 2025 am 09:26 AM

vue.js는 중소형 프로젝트에 적합하지만 REACT는 크고 복잡한 응용 프로그램에 더 적합합니다. 1. Vue.js의 응답 형 시스템은 종속성 추적을 통해 DOM을 자동으로 업데이트하여 데이터 변경을 쉽게 관리 할 수 ​​있습니다. 2. 반응은 단방향 데이터 흐름을 채택하고 데이터 흐름에서 하위 구성 요소로 데이터가 흐르고 명확한 데이터 흐름과 곤란하기 쉬운 구조를 제공합니다.

vue.js vs. React : 프로젝트 별 고려 사항vue.js vs. React : 프로젝트 별 고려 사항Apr 09, 2025 am 12:01 AM

vue.js는 중소형 프로젝트 및 빠른 반복에 적합한 반면 React는 크고 복잡한 응용 프로그램에 적합합니다. 1) vue.js는 사용하기 쉽고 팀이 불충분하거나 프로젝트 규모가 작는 상황에 적합합니다. 2) React는 더 풍부한 생태계를 가지고 있으며 고성능 및 복잡한 기능적 요구가있는 프로젝트에 적합합니다.

태그를 vue로 점프하는 방법태그를 vue로 점프하는 방법Apr 08, 2025 am 09:24 AM

VUE에서 태그의 점프를 구현하는 방법에는 다음이 포함됩니다. HTML 템플릿의 A 태그를 사용하여 HREF 속성을 지정합니다. VUE 라우팅의 라우터 링크 구성 요소를 사용하십시오. javaScript 에서이. $ router.push () 메소드를 사용하십시오. 매개 변수는 쿼리 매개 변수를 통해 전달 될 수 있으며 동적 점프를 위해 라우터 옵션에서 경로가 구성됩니다.

VUE의 구성 요소 점프를 구현하는 방법VUE의 구성 요소 점프를 구현하는 방법Apr 08, 2025 am 09:21 AM

VUE에서 구성 요소 점프를 구현하는 방법은 다음과 같습니다. 라우터 링크 및 & lt; router-view & gt; 하이퍼 링크 점프를 수행하고 대상 경로로 속성을 지정합니다. & lt; router-view & gt; 현재 라우팅 된 렌더링 된 구성 요소를 표시하는 구성 요소. 프로그래밍 방식 탐색을 위해 router.push () 및 router.replace () 메소드를 사용하십시오. 전자는 역사를 구하고 후자는 기록을 떠나지 않고 현재 경로를 대체합니다.

Vue의 div로 점프하는 방법Vue의 div로 점프하는 방법Apr 08, 2025 am 09:18 AM

VUE에서 DIV 요소를 점프하는 두 가지 방법이 있습니다. VUE 라우터를 사용하고 라우터 링크 구성 요소를 추가하십시오. @Click 이벤트 리스너를 추가하고 이것을 호출하십시오. $ router.push () 메소드를 점프하십시오.

vue 점프로 값을 전송하는 방법vue 점프로 값을 전송하는 방법Apr 08, 2025 am 09:15 AM

VUE에서 데이터를 전달하는 두 가지 주요 방법이 있습니다 : Props : 일원 데이터 바인딩, 부모 구성 요소에서 자식 구성 요소로 데이터를 전달합니다. 이벤트 : 이벤트와 사용자 정의 이벤트를 사용하여 구성 요소간에 데이터를 전달합니다.

Vue의 소개 방법으로 점프하는 방법Vue의 소개 방법으로 점프하는 방법Apr 08, 2025 am 09:12 AM

vue.js는 점프하는 세 가지 방법을 제공합니다. 기본 JavaScript API : Window.location.href를 사용하여 점프하십시오. Vue 라우터 : & lt; router-link & gt를 사용하십시오. 태그 또는이. $ router.push () 메소드 점프. Vuex : 파견 경로 점프는 파견 동작을 통과하거나 돌연변이를 커밋합니다.

VUE의 점프 페이지를 설정하는 방법VUE의 점프 페이지를 설정하는 방법Apr 08, 2025 am 09:09 AM

라우터 링크 구성 요소를 사용하여 클릭 가능한 링크 생성을 포함하여 VUE에서 페이지 리디렉션을 설정하는 몇 가지 방법이 있습니다. router.push () 메소드를 사용하여 히스토리 스택에 새 경로를 수동으로 추가하십시오. 라우터 .replace () 메소드를 사용하여 현재 경로를 교체하십시오. location.href를 사용하여 직접 새 페이지로 리디렉션하십시오.

See all articles

핫 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尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

SecList

SecList

SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

메모장++7.3.1

메모장++7.3.1

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

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

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