我在我的文件中使用.reopen
对类进行了一些更改,但我很难在同一个文件中更改计算属性。
我将从一个简单的属性开始。这都在我的 custom-date-picker.js
中export default Ember.Component.extend({
...
outputRange: "test",
...
});
powerCalendarRange.reopen({
actions: {
select(day, calendar, e) {
let range = this._buildRange(day);
let { start, end } = range.moment;
this.set('outputRange', "set");
if (start && end) {
let { minRange, maxRange } = this.get('publicAPI');
let diff = Math.abs(end.diff(start));
if (diff < minRange.as('ms') || maxRange && diff > maxRange.as('ms')) {
return;
}
}
let action = this.get('onSelect');
if (action) {
action(range, calendar, e);
}
}
}
});
然后当然,我想在一个html元素中显示outputRange
,如下所示:
<input type="text" value="{{outputRange}}" />
我知道我做错了,我认为这与this
有关。我该怎么看?
答案 0 :(得分:0)
custom-date-picker
是您的组件,power-calendar-range
是不同的组件,组件是隔离的,您需要将outputRange
属性从custom-date-picker
传递到power-calendar-range
。< / p>
你为什么要重新开放?我相信您可以在不使用reOpen
的情况下解决您的用例,而是扩展power-calendar-range
组件。