向 devextreme 调度程序添加必需的规则 - Angular
adding a required rule to devextreme scheduler - Angular
我正在使用 angular 和 devextreme 调度程序的插件制作一个 google 日历之类的应用程序。
当我创建约会时,我制作了一个自定义表格。主题 / 日期 / 和一个 select 框给 select 一个人。
我使用此功能强制要求我的主题遵守规则:
Calendar.component.ts:
onAppointmentFormCreated(data: any) {
console.log(data)
let form = data.form;
form.itemOption("text","isRequired",true);
}
我尝试使用我描述的方法将所需的方法强制到我的 selectbox。但是在 devextreme scheduler 的文档中我发现没有任何用处。
所以我尝试使用 Dx 表单验证器方法来执行此操作:
calendar.component.html
<dx-scheduler
[showAllDayPanel]="false"
[dataSource]="appointmentsData"
appointmentTemplate="appointmentTemplate"
[views]='["agenda","workWeek"]'
startDateExpr="startDate"
endDateExpr="endDate"
currentView="workWeek"
textExpr="text"
[firstDayOfWeek]="1"
[startDayHour]="9"
[endDayHour]="18"
width="100%"
[height]="1100"
(onAppointmentFormCreated)="onAppointmentFormCreated($event)"
(onAppointmentAdding)="creatingAppointment($event)"
(onAppointmentAdded)="createAppointment($event)"
(onAppointmentUpdated)= "updatingAppointment($event)"
(onAppointmentDeleted)= "deletingAppointment($event)">
<dx-date-box [value] = "date" >
<dxo-display-format type="shortDateFR"></dxo-display-format>
</dx-date-box>
<div *dxTemplate="let appointment of 'appointmentTemplate'">
<i>{{appointment.text}} -- </i>
<b>{{appointment.ownerName}}</b>
</div>
<dxi-resource
fieldExpr="ownerId"
label="Personne"
[dataSource]="personData">
<dx-validator>
<dxi-validation-rule type="required" message="Person is required"></dxi-validation-rule>
</dx-validator>
</dxi-resource>
</dx-scheduler>
将此添加到我的日历模块:
import .... DxValidatorModule,DxValidationSummaryModule
就像我在这里看到的那样:https://js.devexpress.com/Demos/WidgetsGallery/Demo/Validation/Overview/Angular/Light/(像国家)
我想向我的 selectbox 添加一个必需的验证器函数,但我不知道如何...
请需要一些帮助。
非常感谢
我想你的方法应该有效。只需确保您指定了正确的 fieldName
:
form.itemOption('ownerId', 'isRequired', true);
我正在使用 angular 和 devextreme 调度程序的插件制作一个 google 日历之类的应用程序。 当我创建约会时,我制作了一个自定义表格。主题 / 日期 / 和一个 select 框给 select 一个人。 我使用此功能强制要求我的主题遵守规则:
Calendar.component.ts:
onAppointmentFormCreated(data: any) {
console.log(data)
let form = data.form;
form.itemOption("text","isRequired",true);
}
我尝试使用我描述的方法将所需的方法强制到我的 selectbox。但是在 devextreme scheduler 的文档中我发现没有任何用处。 所以我尝试使用 Dx 表单验证器方法来执行此操作: calendar.component.html
<dx-scheduler
[showAllDayPanel]="false"
[dataSource]="appointmentsData"
appointmentTemplate="appointmentTemplate"
[views]='["agenda","workWeek"]'
startDateExpr="startDate"
endDateExpr="endDate"
currentView="workWeek"
textExpr="text"
[firstDayOfWeek]="1"
[startDayHour]="9"
[endDayHour]="18"
width="100%"
[height]="1100"
(onAppointmentFormCreated)="onAppointmentFormCreated($event)"
(onAppointmentAdding)="creatingAppointment($event)"
(onAppointmentAdded)="createAppointment($event)"
(onAppointmentUpdated)= "updatingAppointment($event)"
(onAppointmentDeleted)= "deletingAppointment($event)">
<dx-date-box [value] = "date" >
<dxo-display-format type="shortDateFR"></dxo-display-format>
</dx-date-box>
<div *dxTemplate="let appointment of 'appointmentTemplate'">
<i>{{appointment.text}} -- </i>
<b>{{appointment.ownerName}}</b>
</div>
<dxi-resource
fieldExpr="ownerId"
label="Personne"
[dataSource]="personData">
<dx-validator>
<dxi-validation-rule type="required" message="Person is required"></dxi-validation-rule>
</dx-validator>
</dxi-resource>
</dx-scheduler>
将此添加到我的日历模块:
import .... DxValidatorModule,DxValidationSummaryModule
就像我在这里看到的那样:https://js.devexpress.com/Demos/WidgetsGallery/Demo/Validation/Overview/Angular/Light/(像国家)
我想向我的 selectbox 添加一个必需的验证器函数,但我不知道如何... 请需要一些帮助。 非常感谢
我想你的方法应该有效。只需确保您指定了正确的 fieldName
:
form.itemOption('ownerId', 'isRequired', true);