【发布时间】:2017-02-20 19:35:34
【问题描述】:
HyperX 是一个模块,它将标记的模板文字转换为 hyperscript 函数,就像 virtual-dom 中包含的函数一样。
Snabbdom 使用类似超脚本的函数来构建它的 vdom,但它的第二个参数不同。它的属性被各种“模块”使用,而不是属性;
h('div', {
props: {title: someString}, // snabbdom/modules/props
classes: {selected: isSelected}, // snabbdom/modules/class
on: {click: doSomething}, // snabbdom/modules/eventlisteners
style: {color: someColor} // snabbdom/modules/style
}, ['children']);
是否可以像这样使用hyperx 和snabbdom 的超标函数:
const h = require('snabbdom/h');
const hyperx = require('hyperx');
const hx = hyperx(h);
let vdom = hx`
<div
title=${someString}
class-selected={isSelected}
on-click={doSomething}
style={({color: someColor})}
>
children
</div>
`;
【问题讨论】: