Ember.js 将字符串从控制器发送到视图

Ember.js 将字符串从控制器发送到视图,ember.js,view,controller,handlebars.js,Ember.js,View,Controller,Handlebars.js,我刚刚开始使用一些ember.js,而且我还没有经验。这可能是一个非常简单的问题,但我似乎无法回答。我在图表的控制器中,试图使用 range: function() { var dataArr = this.get("rawData"); if (!dataArr) return; var range = ""; var xmax = -1 * Infinity; var xmin = Infinity; var ymax = -1 * I

我刚刚开始使用一些ember.js,而且我还没有经验。这可能是一个非常简单的问题,但我似乎无法回答。我在图表的控制器中,试图使用

    range: function() {
    var dataArr = this.get("rawData");
    if (!dataArr) return;
    var range = "";
    var xmax = -1 * Infinity;
    var xmin = Infinity;
    var ymax = -1 * Infinity;
    var ymin = Infinity;

    code to figure out xmin, max etc......

    lowerBound = new Date(xmin)
    upperBound = new Date(xmax)
    range = d3.time.format.utc("%a, %b%e %-I:%M %p")(lowerBound) + " - " + d3.time.format.utc("%a, %b%e %-I:%M %p")(upperBound);
    return range
  }.observes('display', 'rawData'),

然后我试着用这个把手{{range}},但它不起作用。。。我不知道我是否提供了足够的信息,但如果有人能帮忙,我将不胜感激,谢谢

您需要将您的
范围
属性标识为属性,因此:

range: function() {
    var dataArr = this.get("rawData");
    // blah blah, your implementation
    return range;
  }.property('rawData'),

通过将
rawData
指定为依赖项,如果
rawData
发生变化,Ember将自动重新计算
range

range应为计算属性,请查看观察者