View AmpersandJS:如何在视图中显示之前转换模型数据

View AmpersandJS:如何在视图中显示之前转换模型数据,view,ampersand.js,View,Ampersand.js,在AmpersandJS视图中,是否有从模型转换数据的约定?例如,我希望能够在视图中设置user.joined日期的格式,然后再显示该日期。我不想在模型中这样做 可能是这样的: var View = require('ampersand-view'); var formatDate = require('../helpers/format-date'); module.exports = View.extend({ bindings: { 'model.joined': {

在AmpersandJS视图中,是否有从模型转换数据的约定?例如,我希望能够在视图中设置
user.joined
日期的格式,然后再显示该日期。我不想在模型中这样做

可能是这样的:

var View = require('ampersand-view');
var formatDate = require('../helpers/format-date');

module.exports = View.extend({
  bindings: {
    'model.joined': {
      hook: 'joined',
      transform: function(date) { return formatDate(date) }
    }
  }
});

使用绑定时,您不仅限于
模型
。您还可以绑定到视图上的属性,因为
AmpersandView
扩展了
AmpersandState
这些属性也可以派生,例如:

var-View=require('ampersand-View');
var formatDate=require(“../helpers/format date”);
module.exports=View.extend({
派生:{
格式化连接日期:{
deps:['model.joined'],
fn:function(){return formatDate(this.model.joined)}
}
}
绑定:{
“this.formattedJoinedDate”:{
胡克:“加入”
}
}
});

不要忘记
视图
扩展了
状态
,因此您可以在视图定义中设置要绑定的属性。在
视图.extend
中,您可以在
道具
散列中实例化事物,就像使用
符号与模型
符号与状态
一样,然后在它们上设置绑定

var View = require('ampersand-view');
var formatDate = require('../helpers/format-date');

module.exports = View.extend({
  props: { someDate: 'date' },
  bindings: {
    someDate: {
      hook: 'joined',
      transform: function(date) { return formatDate(date) }
    }
  },
  initialize: function() { this.someDate = new Date(); }
});