Javascript 是否可以对多个实例重用FlatPicker窗格的DOM?

Javascript 是否可以对多个实例重用FlatPicker窗格的DOM?,javascript,flatpickr,Javascript,Flatpickr,我们使用提供统一的界面来编辑日期。在一个实例中,有一个包含许多(数百)行的表,每一行都有一个日期输入,我们使用FlatPicker 考虑到一次只打开一个FlatPicker,是否可以避免在DOM中创建数百个隐藏窗格,而是对所有窗格使用单个窗格 所以我们在AngularJS应用程序中遇到了类似的问题。我们找到的解决方法是向输入字段添加FocusHandler,在该处理程序中创建flatpickr实例,然后对该实例调用.open() handleFocus = () => { const

我们使用提供统一的界面来编辑日期。在一个实例中,有一个包含许多(数百)行的表,每一行都有一个日期输入,我们使用FlatPicker

考虑到一次只打开一个FlatPicker,是否可以避免在DOM中创建数百个隐藏窗格,而是对所有窗格使用单个窗格


所以我们在AngularJS应用程序中遇到了类似的问题。我们找到的解决方法是向输入字段添加FocusHandler,在该处理程序中创建flatpickr实例,然后对该实例调用
.open()

handleFocus = () => {
  const config = {...}
  this.flatpickrInstance = flatpickr(this.input, config);
  this.flatpickrInstance.open();
};
为了清理,我们还向输入字段添加了一个BlurHandler,以便在保存的FlatPicker实例上调用
.destroy()
。这里唯一的问题是
.destroy()
将清除输入字段的值,因此我们需要在调用destroy后立即设置该值,如下所示:

handleBlur = () => {
  const val = this.flatpickrInstance.input.value;
  this.flatpickrInstance.destroy();
  this.input.value = val
};