我正在查看使用hyperscript,main-loop和hyperx的example by substack。
我想使用hyperscript-helpers重新创建此示例以获取类似于Elm的代码。该模块说它支持hyperscript
和virtual-hyperscript
,所以我正在尝试virtual-hyperscript
。
我的代码如下所示:
var vdom = require('virtual-dom')
var vh = require('virtual-hyperscript');
var hh = require('hyperscript-helpers')(vh);
var main = require('main-loop')
var div = hh.div;
var span = hh.span;
var h1 = hh.h1;
var loop = main({ times: 0 }, render, vdom)
document.querySelector('#content').appendChild(loop.target)
function render(state) {
return h1('title');
}
它给了我一个错误:
Uncaught TypeError: Failed to execute 'appendChild' on 'Node': parameter 1 is not of type 'Node'.
出了什么问题?我认为某些东西没有正确连线,因为
console.log(loop.target) //null
如果有帮助,我可以发布我的html和我使用的浏览器构建命令
答案 0 :(得分:1)
private int buttonState = 0;
yourButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (buttonState % 2 == 0) {
yourButton.setCompoundDrawables(R.drawable.ic_selected, null, null, null);
} else {
yourButton.setCompoundDrawables(R.drawable.ic_not_selected, null, null, null);
}
buttonState ++;
}
});
已移至https://github.com/Matt-Esch/virtual-dom/tree/master/virtual-hyperscript
请参阅https://github.com/Raynos/virtual-hyperscript
上的自述文件 virtual-hyperscript
只是virtual-dom/h
的新版本。