如何在渲染前在 Marionette Backbone 视图中格式化模型的值?
How to format the values of a model in Marionette Backbone View before rendering?
如果您实施 onBeforeRender
方法,则无法访问模型值以临时格式化它们
理想情况下,您当然希望在渲染之前格式化值而不更改模型值!
怎么做?
通过检查此 link:http://derickbailey.github.io/backbone.marionette/docs/backbone.marionette.html
你会发现 serializeData
在渲染模板之前被使用
因此,通过覆盖它,如下所示,您可以在渲染之前以任何方式格式化对象值
serializeData():any {
var obj = super.serializeData();
obj.totalEnergy = Math.round(obj.totalEnergy).toFixed(0)
return obj
}
Marionette 视图也有用于此目的的 templateHelpers。 templateHelpers 可用于向视图提供除模型之外的任何其他数据。可以指定函数来格式化要在视图上呈现的模型数据。查看 Marionette 视图文档中模板助手的基本示例 - http://marionettejs.com/docs/marionette.view.html#basic-example
如果您实施 onBeforeRender
方法,则无法访问模型值以临时格式化它们
理想情况下,您当然希望在渲染之前格式化值而不更改模型值!
怎么做?
通过检查此 link:http://derickbailey.github.io/backbone.marionette/docs/backbone.marionette.html
你会发现 serializeData
在渲染模板之前被使用
因此,通过覆盖它,如下所示,您可以在渲染之前以任何方式格式化对象值
serializeData():any {
var obj = super.serializeData();
obj.totalEnergy = Math.round(obj.totalEnergy).toFixed(0)
return obj
}
Marionette 视图也有用于此目的的 templateHelpers。 templateHelpers 可用于向视图提供除模型之外的任何其他数据。可以指定函数来格式化要在视图上呈现的模型数据。查看 Marionette 视图文档中模板助手的基本示例 - http://marionettejs.com/docs/marionette.view.html#basic-example