vue 지시문의 세 가지 요소는 무엇입니까?
vue 지시문의 세 가지 요소는 응답성, 템플릿 엔진 및 렌더링입니다. 응답성은 데이터가 업데이트되거나 추가될 때 페이지가 응답하고 해당 데이터가 다시 렌더링된다는 것을 의미합니다. 템플릿 엔진은 본질적으로 인스턴스 렌더링의 식별자로 사용되는 문자열입니다. 다른 코드.
이 기사의 운영 환경: Windows 10 시스템, Vue 버전 2.9.6, DELL G3 컴퓨터.
vue 지시문의 세 가지 요소는 무엇입니까?
veu의 세 가지 요소
응답성: vue는 데이터의 각 속성 변경을 어떻게 모니터링합니까?
템플릿 엔진: vue의 템플릿은 어떻게 구문 분석되고 어떻게 되나요? 지시어가 처리되었나요?
렌더링: vue의 템플릿은 어떻게 html로 렌더링되나요? 그리고 렌더링 프로세스는
vue가 반응형으로 구현됩니다.
Object.defineProperty
Simulation
1) 반응형이란 무엇입니까
데이터를 수정한 후 attribute, vue는 즉시
data 속성을 모니터링하고 vm
2) Object.defineProperty
구문:
Object.defineProperty(obj, prop, descriptor)
매개변수 설명:
obj: 필수입니다. 대상 개체
prop: 필수입니다. 정의하거나 수정할 속성의 이름
설명자: 필수입니다. 대상 속성의 특징
Basic
var obj = { name: 'zhangsan', age: 25 } console.log(obj.name); // 获取属性的时候,如何监听 obj.age = 26; // 赋值属性的时候,如何监听
defineProperty 메소드를 사용하여 위 작업을 구현합니다. 다음과 같이
var obj = {} var name = 'zhangsan' Object.defineProperty(obj, "name", { get: function () { console.log('get'); return name; }, set: function (newVal) { console.log('set'); name = newVal; } }); console.log(obj.name); // 可以监听到 obj.name = 'lisi'; // 可以监听到
defineProperty를 사용하여 데이터 변경 사항을 모니터링할 수 있습니다. 이는 vue가 응답 작업을 수행하는 핵심 방법이기도 합니다.
3)
var mv = {} var data = { price: 100, name: 'zhangsan' } var key, value; for (key in data) { // 命中闭包。新建一个函数,保证 key 的独立的作用域 (function (key) { Object.defineProperty(mv, key, { get: function () { console.log('get'); return data[key]; }, set: function (newVal) { console.log('set'); data[key] = newVal } }) })(key); }
vue의 템플릿을 구문 분석하는 방법
템플릿이란 무엇입니까?
render 함수
render 함수 및 vdom
1) 템플릿이란 무엇입니까
Essence: 문자열
v-if v-for 등과 같은 로직이 있습니다.
html 형식과 매우 유사하지만 큰 차이가 있습니다
결국 표시용 html로 변환됩니다
템플릿은 결국 변환되어야 합니다
논리( v-if v-for)가 있으므로 JS로 구현해야 합니다(Turing Complete)
html 렌더링 페이지로의 변환은 JS로 구현해야 합니다
그러므로 가장 중요한 것은 템플릿을 JS 함수로 변환하려면
기본 예제
<div id="app"> <div> <input v-model="title"> <button v-on:click="add">submit</button> </div> <ul> <li v-for="item in list">{{item}}</li> </ul> </div>
위는 템플릿입니다.
【관련 추천: "vue.js tutorial"】
위 내용은 vue 지시문의 세 가지 요소는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

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

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

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

뜨거운 주제











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

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

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

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

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

vue.js는 이전 페이지로 돌아갈 수있는 네 가지 방법이 있습니다. $ router.go (-1) $ router.back () 사용 & lt; router-link to = & quot;/quot; Component Window.history.back () 및 메소드 선택은 장면에 따라 다릅니다.

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

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