가상 DOM, 종종 명사

7788 막연한 지식의 주간 요약이 지식을 기록하는 오늘, 기록 가상 DOM을 시작합니다

목록 1 : 가상 DOM은 무엇인가?

TA는 목적하는 시뮬레이션 대상 DOM 트리 인 포함  tag, props, children 세 속성

<DIV ID = "응용 프로그램"> 
  <P 클래스 = "텍스트"> 안녕하세요! </ P> 
</ DIV>

가상 DOM은 다음에 위의 HTML 변환 :

{ 
  태그 : 'DIV' , 
  소품 : { 
    ID : '응용 프로그램' 
  }, 
  이 chidren : [ 
    { 
      태그 : 'P' , 
      소품 : { 
        클래스 이름 : '텍스트' 
      }, 
      이 chidren : [
         '안녕하세요 세계!' 
      ] 
    } 
  ] 
}

 

리스트 2 : 그는 문제를 해결하는 데 사용됩니다?

DOM은 성능 문제가 설계 해결하기 위해 가상 브라우저입니다. 예를 들어, 우리는 하나의 작업이 시간에 즉시 페이지 업데이트에 대한 가상 DOM DOM을 운영하지 않습니다 DOM 작업을 업데이트 할 수 있지만, 객체가 한 번 업데이트됩니다 개체 로컬 JS 이러한 세 가지 업데이트의 내용을 저장하기 위해 세 번이 실제 DOM 트리에, 그래서 불필요한 계산을 많이 방지하기 위해, 그릴 브라우저에 넘겨.

추가 : 많은 사람들이 가상 DOM의 가장 큰 장점은 DIFF 알고리즘이 실제 DOM의 자바 스크립트 성능을 가져온 작업의 소비를 줄이기 위해라고 생각합니다. 이 전부는 아니지만, 가상 DOM을 가져올 수있는 장점이 있지만. 가상 DOM의 가장 큰 장점은 안드로이드와 IOS 기본 구성 요소가 최근 애플릿 매우 뜨거울 수 있습니다 될 수있다, 크로스 플랫폼 기능뿐만 아니라 브라우저의 DOM을 달성하기 위해 원래의 추상적 인 렌더링 과정이 될 수 있습니다 다양한 GUI. (조각의 존재 이해의 최대 장점 복사 매우 철저히 아님)

 

목록 3 : 제작 : 대기, 왜 질문 약함 운영 성능 오버 헤드 DOM 큰?

사실, 대신에 큰 오버 헤드 DOM 트리 있지만 모듈 DOM 트리 및 JS 모듈 질의 이러한 모듈들 사이의 통신에서 분리되어 오버 헤드 추가한다. 전화 고르지 성능, 성능 문제가 특히 눈에 띄는 반면 DOM 작업과 결합이 페이지는 세계의 오늘날의 인기있는 모바일 결국, 엄청난 성능 오버 헤드를 만들고, 다시 그리기 또는 역류하게됩니다.

 

List4 : 가상 DOM 르의 성능을 향상하는 방법을하는지?

DOM을 비교 알고리즘 DIFF 원시 자바 스크립트 객체에 의해 변경되면, DOM 변경해야 계산은 DOM을 변경하는 대신, 전체 뷰를 업데이트 만 작동

 

List5 : 어떻게 제작 가상 DOM에 HTML로 변환하는 방법?

오늘날의 가상 DOM 라이브러리의 주류의 관측 snabbdom , 가상-DOM은 ,으로 반응 일반적으로 함수 시간,이  React.createElement뿐만 아니라 뷰는 방법을 렌더링으로, createElement。而React 是通过 babel 将 jsx 转换为 h 函数渲染的形式,而 Vue 是使用 vue-loader 将模版转为 h 函数渲染的形式,整个h函数返回的就是虚拟DOM的对象

해야 할 일 : 후속은 다시 보충하기 위해 사랑하는 알고리즘을 포함 할 것이다

참고 :

1)  https://juejin.im/post/5c051597e51d45517b0cf7e6  () 가상 DOM 무엇입니까

2)  https://efe.baidu.com/blog/the-inner-workings-of-virtual-dom/  (Vitual DOM의 내부 동작)

3)  https://juejin.im/post/5d085ce85188255e1305cda1#heading-1  (결국 어떤 것은) 가상 DOM이다

4)  https://juejin.im/post/5d36cc575188257aea108a74#heading-14 (심층 분석 : DOM 가상의 뷰 코어)

추천

출처www.cnblogs.com/Tiboo/p/12389321.html