解决方法
Mithril没有为不属于DOM元素属性的属性提供帮助程序. withAttr只处理DOM元素属性(顾名思义).对于keyCode,您需要定义自定义帮助程序
function withKey(key,callback) { return function(e) { var ch = String.fromCharCode(e.keyCode) if (ch == key) callback(key) else m.redraw.strategy("none") //don't redraw (v0.1.20+ only) } } m("div",{onkeypress: withKey("+",ctrl.doSomething)})
如果按下的键不是您要查找的键,则else语句可以防止重绘.