在mithril-js中,vnode如何绑定到单击事件(In mithril-js, how can vnode bind to click event)
在Mithril.js(使用webpack)中,我需要将vnode传递给匿名函数:
如何做呢?
var Button = { view:function(vnode){ return m('div',{onclick:(vnode)=> setSort(vnode)}) } } function setSort(vnode){ .... do somthing with vnode .... }In Mithril.js (using webpack), I need to pass vnode to anonymous function:
how can it be done?
var Button = { view:function(vnode){ return m('div',{onclick:(vnode)=> setSort(vnode)}) } } function setSort(vnode){ .... do somthing with vnode .... }最满意答案
事件处理程序会传递event对象,而不是vnode 。 你已经可以通过闭包访问vnode ,它将作为第一个参数传递给你的view方法。
const Button = { view(vnode) { return m("button", { onclick() { console.log(vnode); } }, "Button"); } }; m.mount(document.body, { view() { return m("div", m(Button) ); } });这是一个关于flems.io的运行示例 。
Event handlers get passed the event object, not a vnode. You already have access to the vnode via closures, it's passed to your view method as the first argument.
const Button = { view(vnode) { return m("button", { onclick() { console.log(vnode); } }, "Button"); } }; m.mount(document.body, { view() { return m("div", m(Button) ); } });Here's a running example on flems.io.
更多推荐
发布评论