我试图添加日期字段我MEAN应用程序的输入,而不使用form
标签使用与角日期属性。为了确保我的解决方案是跨平台我选择使用NPM模块my-date-picker
代替铬唯一input type="date"
(我不得不寻找了很久,直到我发现了,这是为什么有没有这方面的指南)。如何使用我,日期选择器
的想法是成立一个名为projectInstalldate
值,然后用我的“添加”功能,使用它,将它传递通快递和超越。我遇到的问题是日期属性。无论我尝试什么,我似乎都无法正确访问它们。希望我的代码将解释什么,我试图做的:
projects.component.ts
//imports are here
import { IMyDpOptions } from 'mydatepicker';
@Component({
selector: 'app-project',
templateUrl: '../views/projects.component.html',
styleUrls: [ '../styles/projects.component.css' ]
})
export class ProjectsComp implements OnInit {
//unrelated code
//date: Date here?
public myDatePickerOptions: IMyDpOptions = {
editableDateField: false,
openSelectorOnInputClick: true,
dateFormat: 'dd mmm yyyy'
};
constructor(
private projectsService: ProjectsService
) {
//unrelated code
}
//Datepicker function
upDate(installDate: any) {
this.date = installDate;
this.newDate = this.date.toLocaleDateString();
}
add(
install_date: any
): void {
this.projectsService.create(
install_date
).subscribe(project => {
//unrelated code
});
}
projects.component.html
<h4>Date Templated: </h4>
<my-date-picker [options]="myDatePickerOptions"
[(ngModel)]="installDate"
(inputFieldChanged)="upDate(installDate);"
></my-date-picker>
{{ newDate }}
<input class="hidden" #projectInstalldate />
<button class="projectButton" (click)="
add(
<!-- other field values here -->
projectInstalldate.value
);
">
Create</button>
的想法是让从my-date-picker
值然后使用upDate()
变成string
。然后显示的newDate
值 - 此刻是的,它应该只是出现内部{{ newDate }}
,所以我知道它的工作之前,我设置的输入字段的该值。
它以这种方式设置的原因是因为我在这里有30多个其他字段,我不想将其更改为表单,如my-date-picker
示例所示。我试过使用w3学校javacsript日期参考:
var date = new Date();
var newDate = date.toLocaleDateString();
但这只是将newDate设置为当前时间。尝试使用installDate
从my-date-picker
的[(ngModel)]
我得到[对象对象]。这样做应该是非常简单的,但我绝对没有办法找到帮助。将字符串转换为日期的结果很多,但不是相反的结果。你可以看到我想要使用date.toLocaleDateString()
但每次这样,我一直试图实现它已经失败 - 我要么得到一个错误与实例,然后有this.date.etc.
前缀,然后让另一个错误说属性toLocaleDateString
不存在开机类型date
。
在我束手无策这里,真的希望任何事情。