在 datePicker 的函数中注入数据

Inject data in a function for a datePicker

我正在 ember 应用程序中使用 ember flatpickr

它将用于还包含日期的组件中。我想允许根据日期进行选择。

要使用带有 flatpickr 的函数,我使用以下工作 属性:

dateDisabled: [function(date){
    let day = date.getDate()
    if (day & 1){
      return false;
    }else{
      return true;
    }   }]

这个函数测试日期选择器显示的每个日期和return一个布尔值来决定日期是否可选。

如何将 属性 传递给此函数?

这确实很有趣,因为 flatpickr itself takes a function inside the disabled array。但是在该函数中,您无权访问 ember 控制器上下文。所以你可能应该使用你在计算 属性 中创建的箭头函数。这样您也可以访问模型,并且可以在模型更改时修改您的函数:

disable: computed('model.dateToEnable', function() {
  const dateToEnable = this.model.dateToEnable; // only for ember 3.1+, otherwise use .get
  return [date => date.getDay() === dateToEnable];
}),