我刚刚开始使用一些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}}并且它不起作用......我不知道我是否提供了足够的信息,但是如果有人能帮助它非常感谢,谢谢!< / p>
答案 0 :(得分:1)
您需要将range
属性标识为属性,因此:
range: function() {
var dataArr = this.get("rawData");
// blah blah, your implementation
return range;
}.property('rawData'),
通过将rawData
指定为依赖项,如果range
发生更改,Ember将自动重新计算rawData
。