我在使用角度Datepicker检索某些禁用日期时遇到问题,
当我对日期进行硬编码时,一切正常,
但是当我从Web api后端检索禁用日期时,禁用日期将被忽略...
我在编程方面仍然是菜鸟,我可能缺少一些愚蠢的东西
与异步编程或可观察变量有关吗?
component.html
// ...
public static File getResourceAsFile(String resourcePath) {
try {
InputStream in = ClassLoader.getSystemClassLoader().getResourceAsStream(resourcePath);
if (in == null) {
return null;
}
File tempFile = File.createTempFile(String.valueOf(in.hashCode()), ".tmp");
tempFile.deleteOnExit();
try (FileOutputStream out = new FileOutputStream(tempFile)) {
//copy stream
byte[] buffer = new byte[1024];
int bytesRead;
while ((bytesRead = in.read(buffer)) != -1) {
out.write(buffer, 0, bytesRead);
}
}
return tempFile;
} catch (IOException e) {
e.printStackTrace();
return null;
}
}
File fXmlFile = getResourceAsFile("configFile.xml");
// ...
component.ts
<input type="text" placeholder="Daterangepicker" class="form-control" bsDaterangepicker
[datesDisabled]="disabledDates">
答案 0 :(得分:0)
最后我找到了解决方案,但是我不确定解决方案的质量。如果有人得到更好的解决方案,我将不胜感激=)
我刚刚创建了另一个var并将后端的结果放入其中,之后,我循环到响应数组直到最后,并将每个结果压入我的主变量中。
我很确定这不是正确的方法,但目前我还没有找到更好的解决方案
export class Component implements OnInit {
disabledDates :Date[] = [];
test :Date[];
constructor(...) { }
ngOnInit() {
...
this.getUnavaibilities();
}
getUnavaibilities(){
this.homesService.getUnavaibilities(this.Id).subscribe(
reponse => this.UnavailabilitieshandleSuccesfulResponse(reponse));
}
UnavailabilitieshandleSuccesfulResponse(reponse){
this.test = reponse;
console.log(this.test)
for (var i = 0; i< this.test.length;i++) // for acts as a foreach
{
this.disabledDates.push(new Date(this.test[i]))
console.log(this.test[i])
}
}
}