包裹在自定义组件中时清除日期选择器

时间:2019-04-16 11:10:04

标签: angular

我知道大多数人都熟悉dp-date-picker。由于某种原因,我需要将其包装在一个由我自己制造的组件中,其名称为bh-date-picker。问题是我无法清除此日期选择器,有趣的问题是清除功能仅在第一次使用时有效! 我使用NG_VALUE_ACCESSOR可以更好地使用此组件,但是由于某些原因,我不知道为什么我无法清除它

我为您设计了一个链接,其中包含一个日期选择器和一个清除按钮 您会看到它只在第一次使用。

https://stackblitz.com/edit/angular-3gpkhy

1 个答案:

答案 0 :(得分:0)

我用技巧解决了这个问题 https://stackblitz.com/edit/angular-t9mrgs

this.ref.dateModel='';
this.ref.dp.inputElement='';
this.ref.dp.inputElementValue='';
this.ref.dp.inputElementContainer.children[0].attributes[2].nodeValue='';
this.ref.dp.inputElementContainer.children[0].attributes[2].textContent='';
this.ref.dp.inputElementContainer.children[0].attributes[2].value='';
this.ref._dateModel='';


this.ref.dp.api.open();
this.ref.dp.api.close();

在这里您可以看到打开和关闭datepicker可以解决我不知道其最佳解决方案的问题,但它解决了我的问题