폴리머 원소와 각도 지향성
나는 이것이 이전에, 특히 여기에서 요청되었다는 것을 알고 있다.
하지만, 그 대답은 나에게 꽤 추상적으로 보이고 나는 실제로 내 자신이 꽤 혼란스럽다는 것을 발견한다.
.vs의 답은 다음과 같습니다.
폴리머(그리고 보다 정확하게는 Shadow DOM)는 HTML의 비트를 구성하는 것뿐만 아니라 그것들을 캡슐화하는 기능도 만듭니다.이는 근본적으로 새로운 기능으로, 다른 템플릿 시스템 또는 프레임워크와 함께 사용하여 성능을 향상시킬 수 있습니다.
각지향성은 실제와 거의 비슷하지만 고분자 요소가 좀 더 효율적일 수 있습니다.여기서 "캡슐화"는 제가 이해하지 못하는 어떤 더 깊은 의미를 가지고 있다고 확신합니다.
예를 들어 Angular가 발달하고 있다고 가정해 봅시다.JS 웹 어플리케이션언제, 어떻게, 그리고 왜 각도 지시보다 폴리머 요소를 사용해야 합니까?
각 방향 대신 폴리머 요소가 사용됩니까? 사용한다면 어떤 요소가 다른 요소보다 먼저 사용됩니까?아니면 폴리머 요소의 관점에서 각도 지시가 구현됩니까?
"구성 요소를 구현/구축할 때와 하나의 구성 요소를 사용할 때의 차이점은 무엇입니까?"라는 두 가지 질문을 하게 됩니다.
컴포넌트 소비
가까운 장래에, 양쪽 모두를 함께 사용할 수 있습니다.웹 컴포넌트가 어떤 테크놀로지/라이브러리로 구축되어 있는지, 어떤 벤더가 제조하고 있는지는 중요하지 않습니다.간단하게bower install
(또는 이와 유사)를 사용하여 앱에 적합한 컴포넌트를 사용합니다.
중요한 것은 모든 것이 DOM이 된다는 것입니다. 즉, 요소가 심리스하게 연동된다는 뜻입니다.interop 스토리는 훌륭합니다.폴리머 원소에 결합된 각도 지시의 POC는 다음과 같습니다.
빌딩 컴포넌트
건축 요소는 현재 다른 이야기다.폴리머의 접근방식은 모든 웹 컴포넌트를 중심으로 하는 것입니다.Angular는 웹 컴포넌트 시대 이전에 구축되었기 때문에 조금 다릅니다.
각도 지시어는 사용자 지정 태그/구성 요소를 작성하는 방법입니다.이를 위해 폴리머 및 사용자 정의 요소 사양이 표준 기반 방법입니다.
고분자 원소를 만드는 방법은 매우 선언적입니다.각도 지시어는 대부분 JS에서 정의됩니다(템플릿 파일을 참조할 수 있습니다).
사용자 정의 요소를 사용하여 폴리머 요소를 사용하기 때문에 상속이 간단합니다.Angular directions의 상속 스토리는 잘 모르겠어요.
폴리머 요소는 섀도우 DOM을 사용합니다.이것에 의해, DOM 와 CSS 의 캡슐화가 가능하게 됩니다.요소에서 정의한 스타일은 삭제되지 않고 페이지 스타일은 삭제되지 않습니다.틀릴 수도 있지만 각도 지시어는 스타일 캡슐화 개념이 없습니다.Shadow DOM 스펙이 무료로 제공된다는 것은 어려운 문제입니다.
데이터 바인딩 개념이 유사합니다.
각 방향성은 폴리머 요소의 관점에서 구현될 것인가?
최종적으로 Angular는 진화하는 웹 컴포넌트 표준 중 일부를 채택할 것입니다.이는 모든 프레임워크에 적용됩니다.Ember는 웹 컴포넌트를 포함한 2014년 계획을 발표했습니다.예를 들어 Angular.dart는 이미 Shadow DOM을 디렉티브에 사용하고 있습니다.
폴리머 요소(커스텀 요소)는 기본적으로 다른 커스텀 요소와 상호 운용할 수 있습니다.이것은 단지 DOM일 뿐이기 때문입니다.DOM 요소는 서로 잘 연동됩니다.
이게 도움이 됐으면 좋겠네요!
언급URL : https://stackoverflow.com/questions/20661409/polymer-elements-vs-angular-directives
'programing' 카테고리의 다른 글
UI-Router state.go 상태 변경 시 콜백 (0) | 2023.03.10 |
---|---|
Angularjs 컨트롤러 파괴자 (0) | 2023.03.10 |
타이프 스크립트 및 재스트:시뮬레이션된 함수의 유형 오류 방지 (0) | 2023.03.10 |
JSON에서 중첩된 python 개체를 인코딩하는 중 (0) | 2023.03.10 |
Python용 cx_Oracle 설치 (0) | 2023.03.10 |