解决方法
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语句可以防止重绘.