2016-10-24 53 views
3

我聽說過很多關於Angular第二次到來的討論,並且似乎有很多奇妙的東西出現,但我知道Angular 1.0沒有爲Web組件提供現成的集成。Angular2是否使用Web組件?

我讀過一些關於Angular2的內容,它不再使用指令。所以我想知道這是否意味着Angular2會在沒有任何額外集成的情況下使用Polymer/HTML模板和其他Web組件?

+2

沒有。角度組件借用了WCs的一些概念,但僅此而已。它仍然需要一些努力使聚合物和A2一起工作。見https://github.com/vaadin/angular2-polymer聚合物2可能會改變。 – estus

回答

9

更新

有一個持續的努力(目前只處於試驗階段),以改變這種狀況 - 角元素https://moduscreate.com/blog/angular-elements-ngcomponents-everywhere/

Web組件可以在Angular2應用程序中使用,但Angular2組件不能作爲Web組件使用。

AFAIK沒有制定Angular2組件實際Web組件的短期計劃。這是一開始的目標,但結果太複雜了。

使用每個組件設置ViewEncapsulation.Native,會使用shadow DOM,但在Angular2中效果不佳,因爲瀏覽器缺少設計陰影DOM樣式的功能。 Polymer使用了模擬的CSS變量和mixins,但Angular2還沒有提供類似的東西。

目前默認設置是ViewEncapsulation.Emulated,其中一些樣式範圍被模擬。