Ember子组件仅在单击

时间:2016-06-03 18:26:20

标签: javascript ember.js pikaday

我根据Pikaday获得了form-componentdatepicker子组件。

form-component我有datepicker的观察员价值:

// form-component.hbs
{{date-picker value=model.dueDate}}


// form-component.js
testDueDate: function() {
  console.log(this.get('model.dueDate'));
}.observes('model.dueDate');

// date-picker.js
testDatepickerValue: function() {
  console.log(this.get('value'));
}.observes('value');

// Only triggers date-picker's observer, but not the one from form-component:
this.set('value', new Date());

当我手动选择日期(即打开日期选择器并用鼠标点击任何日期)时,一切正常:testDueDate()testDatepickerValue()都会触发并显示给定日期。< / p>

但是,当我以编程方式设置日期(即通过Pikalendar API)时,父组件的观察者不会触发,即使datepicker中的那个做了并显示value改变。

通过查看Pikalendar的代码,我可以看到点击日期并以编程方式设置日期都使用setDate()函数,因此,从那里开始,一切都应该触发相同的功能。

不知何故,只有在点击日历时,表单组件才会更新value

关于我可能做错什么的任何想法?

谢谢!

0 个答案:

没有答案