1 & 2) Polymer-Komponenten sind aufgrund ihres versteckten Baums im Shadow DOM abgegrenzt. Das bedeutet, dass ihr Stil und Verhalten nicht nach außen dringen können. Angular ist nicht auf die spezielle Direktive beschränkt, die Sie erstellen, wie bei einem Polymer-Webkomponenten. Eine Angular-Direktive könnte möglicherweise mit etwas in Ihrem globalen Bereich in Konflikt geraten. Meiner Meinung nach ist der Vorteil, den Sie von Polymer erhalten, das, was ich erklärt habe... modulare Komponenten, die über CSS & JavaScript verfügen, die auf diese bestimmte Komponente beschränkt sind, die niemand berühren kann. Unberührbares DOM!
Angular-Direktiven können erstellt werden, um ein Element mit mehreren Funktionalitäten zu kennzeichnen. Bei Polymer-Webkomponenten ist das nicht der Fall. Wenn Sie die Funktionalität von Komponenten kombinieren möchten, können Sie zwei Komponenten in eine andere Komponente einfügen (oder sie in eine andere Komponente einpacken) oder Sie können eine vorhandene Komponente erweitern. Denken Sie daran, der Hauptunterschied besteht immer noch darin, dass jede Komponente in Polymer-Webkomponenten abgegrenzt ist. Sie können CSS & JS-Dateien über mehrere Komponenten hinweg gemeinsam nutzen oder Sie können sie inline einbetten.
3) Ja, Angular plant laut Rob Dodson und Eric Bidelman, Polymer in Version 2+ zu integrieren.
Es ist lustig, wie hier niemand das Wort Bereich erwähnt hat. Ich denke, das ist einer der Hauptunterschiede.
Es gibt viele Unterschiede, aber sie haben auch eine Menge Gemeinsamkeiten, wenn es darum geht, modulare Legostein-ähnliche Funktionalitäten für eine App zu erstellen. Ich denke, es ist sicher zu sagen, dass Angular das Anwendungs-Framework sein würde und Polymer irgendwann neben Direktiven mit dem Hauptunterschied im Bereich in derselben App existieren könnte, aber Polymer könnte eines Tages viele Ihrer aktuellen Direktiven ersetzen. Aber ich sehe keinen Grund, warum Angular nicht so funktionieren könnte, wie es ist, und auch Polymer-Komponenten einschließen könnte.
Bei erneutem Lesen der Antworten, während ich dies schreibe, habe ich festgestellt, dass Eric Bidelman (ebidel) das in seiner Antwort irgendwie behandelt hat:
"Shadow DOM ermöglicht das Zusammenstellen von HTML-Bits, ist aber auch ein Tool zum Einschließen dieses HTML."
Zur Anerkennung, wo Anerkennung gebührt, habe ich meine Antworten aus vielen Interviews mit Rob Dodson und Eric Bidelman gehört. Aber ich denke, dass die Antwort nicht formuliert war, um die Frage dieses Typen so zu beantworten, wie er es wollte. Trotzdem glaube ich, dass ich auf die Antwort eingegangen bin, die er sucht, verfüge jedoch in keiner Weise über mehr Informationen zum Thema als Rob Dodson und Eric Bidelman.
Hier sind meine Hauptquellen für die Informationen, die ich gesammelt habe.
JavaScript Jabber - Polymer mit Rob Dodson und Eric Bidelman
Shop Talk Show - Webkomponenten mit Rob Dodson