1

我最近接手了一个大型 Backbone.js 项目,该项目使用 Backbone.Modelbinding 插件来提供模型和视图之间的数据绑定,并直接引用 html 元素中的“data-bind”属性中的模型属性名称。

对于非表单项,数据绑定是单向的,从模型到视图,但对于表单项,用户可以更改表单输入,以便更新已绑定到该元素的模型属性,并且反之亦然——模型还可以更新表单输入的内容。

我需要某种视图助手,它将以与模型中绑定的数据不同的格式显示信息,而不会影响模型本身。

例如,如果模型中的一个属性的值是数字 679,我可能需要视图将其显示为 $679.00,而模型的版本仅保留数字 679。

在其他类似的库中,有一些简单的方法可以在任一方向上执行这些转换(Backbone.Modelbinder 中的“转换器参数”,Knockout.js 中的“计算的 observables”,我认为它们在 Silverlight 中称为转换器等)。不过,似乎没有办法使用 Backbone.Modelbinding 来做到这一点。有谁知道一种方法?

4

2 回答 2

4

推荐你使用backbone.modelbinderhttps://github.com/theironcook/Backbone.ModelBinder+backbone-nestedhttp://afeld.github.com/backbone-nested/)。可以轻松实现双向嵌套模型和视图之间的绑定。

有demo,希望对你有用: http://files.cnblogs.com/justinw/Nested_Model_bi_Binding.zip

backbone.modelbinder 可以轻松解决您的问题,请参见此处: https ://github.com/theironcook/Backbone.ModelBinder#formatting-and-converting-values

于 2012-07-18T03:39:55.900 回答
0

这是在 Backbone.ModelBinding 被放弃之前实现一半的最后一个功能。如果可以,我建议切换到 Backbone.ModelBinder。

于 2012-07-18T02:34:01.847 回答