이 질문을 가장 먼저하는 사람은 아닙니다. :) 질문을하기 전에 몇 가지 사항을 명확히하겠습니다.
Polymer webcomponents.js
는 Web Components 우산에 해당하는 다양한 W3C API에 대한 여러 개의 폴리 필을 포함하는 라이브러리입니다. 이것들은:
- 맞춤 요소
- HTML 가져 오기
<template>
- 그림자 DOM
- 포인터 이벤트
- 다른 사람
문서 ( polymer-project.org ) 의 왼쪽 탐색 메뉴 에는 이러한 "플랫폼 기술"에 대한 페이지가 있습니다. 이러한 각 페이지에는 개별 폴리 필에 대한 포인터도 있습니다.
<link rel="import" href="x-foo.html">
HTML 가져 오기입니다. 가져 오기는 다른 HTML에 HTML을 포함시키는 데 유용한 도구입니다. 당신은 포함 할 수 있습니다 <script>
, <link>
마크 업 또는 가져 오기에 어떤 다른 사람을.
<x-foo>
x-foo.html에 "링크" 되는 것은 없습니다 . 귀하의 예에서 <x-foo>
(예 <element name="x-foo">
:) 의 맞춤 요소 정의가 x-foo.html에 정의되어 있다고 가정합니다 . 브라우저가 해당 정의를 보면 새 요소로 등록됩니다.
질문에!
Angular와 Polymer의 차이점은 무엇입니까?
우리는 Q & A 비디오 에서이 중 일부를 다루었습니다 . 일반적으로 Polymer는 웹 구성 요소를 사용하고 사용하는 방법을 보여주는 라이브러리입니다. 기본 요소는 사용자 지정 요소 (예 : 빌드하는 모든 것이 웹 구성 요소 임)이며 웹이 진화함에 따라 진화합니다. 이를 위해 최신 버전의 최신 브라우저 만 지원합니다.
이 이미지를 사용하여 Polymer의 전체 아키텍처 스택을 설명합니다.
적색 층 : 우리는 일련의 폴리 필을 통해 내일의 웹을 얻습니다. 브라우저가 새로운 API를 채택함에 따라 이러한 라이브러리는 시간이 지남에 따라 사라집니다.
노란색 레이어 : 일부 설탕에 polymer.js를 뿌립니다. 이 계층은 지정된 API를 함께 사용하는 방법에 대한 의견입니다. 또한 데이터 바인딩, syntatic sugar, change watcher, 게시 된 속성 등이 추가됩니다. 웹 컴포넌트 기반 앱을 구축하는 데 도움이된다고 생각합니다.
녹색 : 포괄적 인 UI 구성 요소 세트 (녹색 계층)가 여전히 진행 중입니다. 이것들은 모든 빨강 + 노랑 레이어를 사용하는 웹 컴포넌트입니다.
각도 지시어 대 사용자 정의 요소?
Alex Russell의 답변을 참조하십시오 . 기본적으로 Shadow DOM은 약간의 HTML 작성을 허용하지만 해당 HTML을 캡슐화하는 도구이기도합니다. 이것은 기본적으로 웹의 새로운 개념이며 다른 프레임 워크가 활용할 것입니다.
AngularJS가 가지고 있지 않은 폴리머는 어떤 문제를 해결합니까?
유사성 : 선언적 템플릿, 데이터 바인딩.
차이점 : Angular는 서비스, 필터, 애니메이션 등에 대한 고급 API를 보유하고 있으며 IE8을 지원하며 현재 프로덕션 앱을 구축하기위한 훨씬 강력한 프레임 워크입니다. 폴리머는 알파에서 시작됩니다.
향후 AngularJS와 Polymer를 연계 할 계획이 있습니까?
그들은 별도의 프로젝트 입니다. 그러나 Angular 팀과 Ember 팀 은 결국 자체 플랫폼에서 기본 플랫폼 API를 사용 하기로 했다고 발표했습니다 .
^ 이것은 큰 승리 IMO입니다. 웹 개발자가 강력한 도구 (Shadow DOM, Custom Elements)를 사용하는 세계에서 프레임 워크 작성자는 이러한 기본 요소를 활용하여 더 나은 프레임 워크를 작성할 수 있습니다. 그들 대부분은 현재 "일을 끝내기"위해 큰 농구를 겪고있다.
최신 정보:
이 주제에 대한 훌륭한 기사가 있습니다. " 여기에 Polymer와 Angular의 차이점이 있습니다. "