天天看點

AngularJS 和 Polymer 的角色,是否有競争關系

angularjs 2.0 一個關鍵的特性就是支援 web components。而 google 的 polymer 就是一個 web component 技術的實作,同時也是一個基于 web components 的架構。那麼 angularjs 和 polymer 之間到底角色上有何異同呢?

angularjs 2.0 團隊成員 rob eisenberg 在之前 解釋 了 angularjs 和 polymer 之間的關系:

“angular 是真正圍繞着優化應用開發而設計的,包括 di、路由、模闆、修飾符指令等很多進階的資料綁定”

“而 polymer 是為自定義元素開發而設計的,是以有着基礎的模闆和綁定以及很強的元件模型”

是以 eisenberg 希望使用者通過 polymer 來實作跨架構的 ui 元件和純 web 元件。而應用的元件應該使用 angularjs 建構。

兩者有競争關系嗎?

在 google i/o 2014 大會上,google 釋出了 paper elements, 這是符合 material design 設計規範的自定義元素,這些元素就是使用 polymer 實作的 web components。這些元件在 angularjs 上很有用,特别是 2.0 版本,是以兩者并沒有競争關系。也就是說,polymer 可以幫助 angularjs 擴充在 web component 上的實作。不過,作為一個架構,polymer 在未來或多或少會跟 angular 有一定的重疊。