聚合物与x-tag和香草js的比较
comparison between polymer and x-tag and vanilla js
谁能给我一些关于聚合物,x-tag和香草js的区别的想法?
我在我的项目中使用了聚合物,但我想比较聚合物,x-tag和香草js。
VanillaJS只意味着在纯JS中使用web组件而不使用任何框架/包装器。
您必须注册自定义元素,冲压元素并自己处理数据绑定。
x-tag
和Polymer
都为web组件提供了一个方便而又固执己见的包装器,大大减少了样板代码。
IMHO Polymer
库提供了最简化的方法(关于数据绑定,定义模板等)
x-tag:
xtag.register('x-accordion', {
// extend existing elements
extends: 'div',
lifecycle:{
created: function(){
// fired once at the time a component
// is initially created or parsed
},
inserted: function(){
// fired each time a component
// is inserted into the DOM
},
removed: function(){
// fired each time an element
// is removed from DOM
},
attributeChanged: function(){
// fired when attributes are set
}
},
events: {
'click:delegate(x-toggler)': function(){
// activate a clicked toggler
}
},
accessors: {
'togglers': {
get: function(){
// return all toggler children
},
set: function(value){
// set the toggler children
}
}
},
methods: {
nextToggler: function(){
// activate the next toggler
},
previousToggler: function(){
// activate the previous toggler
}
}
});
这是聚合物的样子:
<polymer-element name="polymer-accordion" extends="div" on-click="{{toggle}}">
<template>
<!-- shadow DOM here -->
</template>
<script>
Polymer('polymer-accordion' {
created: function() { ... },
ready: function() { ... },
attached: function () { ... },
domReady: function() { ... },
detached: function() { ... },
attributeChanged: function(attrName, oldVal, newVal) {
},
toggle : function() {....},
get togglers() {},
set togglers(value) {},
nextToggler : function() {},
previousToggler : function() {},
});
</script>
</polymer-element>
Web Components是浏览器中的本机实现。Polymer是一个库,它是Web组件技术之上的一个非常薄的层。X-Tag是另一个更薄的库,因为它只依赖于四种Web组件技术之一。
我写过一篇关于这个的文章:http://pascalprecht.github.io/2014/07/21/polymer-vs-x-tag-here-is-the-difference/
相关文章:
- 如何使用 node.js 比较两个 json 数组
- Backbone.js比较器函数是'工作不正常
- 使用underscore.js比较两个Object
- 角度JS比较两个日期是否相等
- 覆盖主干网.js比较器
- 主干.js:比较集合中的模型属性
- 使用node.js比较两个对象
- Angular JS===比较不起作用
- 无法使用Angular.js比较日期
- JS:比较两个表,并在这两个表的基础上生成新的表
- JS比较字符串和换行符
- NodeJS(通用JS)比较IP地址
- 使用js比较存储在PHP会话变量中的密码与新输入的密码
- 不可变JS比较嵌套结构
- js比较器函数,如何实现降序排序
- 如何在JS比较中忽略破折号或连字符
- 使用Linq.js比较对象数组的每个成员
- JS:比较没有隐藏字段的字典
- JS:比较数组和添加新的项目或删除不再在数组中的项目
- 木偶.js和卓别林.js比较