Html typescript˜;属性不存在于类型void˜;
我碰巧有一些代码是用angular bootstrap生成的,它是一个数据选择器,在事件方寄存器中(单击new并生成一个新事件),我希望用户选择一个日期并保存它,下面是日期选择器的代码:Html typescript˜;属性不存在于类型void˜;,html,angular,typescript,date,void,Html,Angular,Typescript,Date,Void,我碰巧有一些代码是用angular bootstrap生成的,它是一个数据选择器,在事件方寄存器中(单击new并生成一个新事件),我希望用户选择一个日期并保存它,下面是日期选择器的代码: <p>Selecione a data</p> <ngb-datepicker #dp [startDate]="modelAtual" [(ngModel)]="modelAtual" (navigate)="date = $even
<p>Selecione a data</p>
<ngb-datepicker #dp [startDate]="modelAtual" [(ngModel)]="modelAtual" (navigate)="date = $event.next"></ngb-datepicker>
<pre>Month: {{ date.month }}.{{ date.year }}</pre>
<pre>Model: {{ model | json }}</pre>
然后我有一段代码,每当用户想要编辑这个寄存器(你可以这么做)时都会加载,为了准确显示他之前选择的日期,我尝试将变量modelAtual分配给变量datahoje,由于某种原因,它会返回标题中提到的错误
this.selecionado['dataInicial']
有人能告诉我那是什么原因吗;DR(简短答复):
您的方法salvarImagem
不返回任何内容(显式salvarImagem():void
),查看代码时,您应该返回一个具有属性datahoje
详细回答:
为了避免错误,您需要返回值
或者调用该方法并从已编辑的对象中获取值(作为副作用)
关于Typescripts的类型:
另外,您的IDE“知道”返回类型-您可以通过ctrl(对于MacOS为cmd)+将鼠标悬停在方法上来检查它
if (this.chave !== undefined) {
this.service.get(this.chave).valueChanges().subscribe(obj => {
this.selecionado = obj;
this.logo = this.selecionado["arquivo"];
//this.modelAtual = { year: 2011, month: 7, day:23};
this.modelAtual = this.salvarImagem().datahoje;
})
}
salvarImagem(): { datahoje: Date } {
...
return { datahoje };
}
this.selecionado['dataInicial']