2

我最近开始学习 mithril.js,我想知道如何制作非常基本的模型 -> 查看单向数据绑定应用程序。

TestModel = function(data){
  this.name = m.prop(data.name)
}
testModel = new TestModel({name: "John"})

上面的代码声明了一个模型,它可以完美地用作 getter/setter。但是如何为像 Backbone 的模型事件设置事件侦听器listenTo('model',"change",callbackFunc)

我看到的所有示例代码都是为实际用户操作设置事件,例如click,keyuponchange. 但从不直接听实际模型值的状态。

我错过了什么还是我理解如何错误地使用 mithril.js?

提前致谢。

4

1 回答 1

3

秘银的关键思想之一是更改通常发生在事件之后:

  • onclick类似于视图模板或在视图模板keyup中定义的用户操作m()
  • 使用 ajax 请求m.request

Mithril 会在这些之后自动重绘,从而减轻大多数听众的需求。

如果您通过其他方法更新模型并且需要手动重绘,请使用m.redrawm.startComputation / m.endComputation。感谢 Mithril 的 DOM diff 算法,重绘非常便宜,所以不要害怕使用它们(当然,有一些常识!)查看m.redraw文档以获取更多信息。

于 2015-06-09T10:04:37.343 回答