feat: only validate field on submit only

This commit is contained in:
Methapon2001 2024-07-26 11:05:07 +07:00
parent 10e0d638f5
commit c3ac90429e
26 changed files with 164 additions and 14 deletions

View file

@ -46,6 +46,7 @@ onMounted(async () => {
<div class="col-9 row q-col-gutter-md">
<q-select
lazy-rules="ondemand"
id="select-br-id"
:dense="dense"
outlined
@ -66,6 +67,7 @@ onMounted(async () => {
/>
<q-select
lazy-rules="ondemand"
id="input-source-nationality"
:dense="dense"
outlined
@ -94,6 +96,7 @@ onMounted(async () => {
/>
<q-input
lazy-rules="ondemand"
for="input-name"
:dense="dense"
outlined
@ -106,6 +109,7 @@ onMounted(async () => {
/>
<q-input
lazy-rules="ondemand"
for="input-detail"
:dense="dense"
outlined
@ -150,6 +154,7 @@ onMounted(async () => {
</div>
<q-input
lazy-rules="ondemand"
for="input-process"
:dense="dense"
outlined

View file

@ -32,6 +32,7 @@ const props = defineProps<{
</div>
<div v-if="!service" class="col-9 row q-col-gutter-md">
<q-input
lazy-rules="ondemand"
:dense="dense"
outlined
:readonly="readonly"
@ -44,6 +45,7 @@ const props = defineProps<{
:rules="[(val: string) => !!val || $t('pleaseInformation')]"
/>
<q-input
lazy-rules="ondemand"
:dense="dense"
outlined
:readonly="readonly"
@ -54,6 +56,7 @@ const props = defineProps<{
v-model="detail"
/>
<q-input
lazy-rules="ondemand"
:dense="dense"
outlined
:readonly="readonly"
@ -67,6 +70,7 @@ const props = defineProps<{
<div v-if="service" class="col-9 row q-col-gutter-md">
<q-input
lazy-rules="ondemand"
id="input-service-code"
for="input-service-code"
:dense="dense"
@ -80,6 +84,7 @@ const props = defineProps<{
/>
<q-select
lazy-rules="ondemand"
id="input-source-nationality"
:dense="dense"
outlined
@ -108,6 +113,7 @@ const props = defineProps<{
/>
<q-input
lazy-rules="ondemand"
id="input-service-name"
for="input-service-name"
:dense="dense"
@ -119,6 +125,7 @@ const props = defineProps<{
v-model="serviceName"
/>
<q-input
lazy-rules="ondemand"
id="input-service-description"
for="input-service-description"
:dense="dense"

View file

@ -16,6 +16,7 @@ defineProps<{
<div class="col-3 app-text-muted">• {{ $t('priceInformation') }}</div>
<div class="col-9 row q-col-gutter-md">
<q-input
lazy-rules="ondemand"
:dense="dense"
outlined
:readonly="readonly"
@ -28,6 +29,7 @@ defineProps<{
/>
<q-input
lazy-rules="ondemand"
:dense="dense"
outlined
:readonly="readonly"
@ -40,6 +42,7 @@ defineProps<{
/>
<q-input
lazy-rules="ondemand"
:dense="dense"
outlined
:readonly="readonly"

View file

@ -352,6 +352,7 @@ function confirmDelete(items: unknown[], index: number) {
<!-- field name -->
<q-select
lazy-rules="ondemand"
dense
outlined
emit-value
@ -380,6 +381,7 @@ function confirmDelete(items: unknown[], index: number) {
<!-- type -->
<div class="col">
<q-select
lazy-rules="ondemand"
dense
outlined
emit-value
@ -483,6 +485,7 @@ function confirmDelete(items: unknown[], index: number) {
{{ $t('telephone') }}
</div>
<q-input
lazy-rules="ondemand"
v-if="p.type === 'string'"
v-model="p.phoneNumberLength"
input-class="text-caption"
@ -515,6 +518,7 @@ function confirmDelete(items: unknown[], index: number) {
{{ $t('decimal') }}
</div>
<q-input
lazy-rules="ondemand"
v-model="p.decimalPlace"
class="col additional-label"
:class="{ 'q-mt-xs': $q.screen.lt.md }"
@ -534,6 +538,7 @@ function confirmDelete(items: unknown[], index: number) {
>
<div class="col rounded">
<q-input
lazy-rules="ondemand"
v-model="p.options[i]"
class="col additional-label"
dense

View file

@ -61,6 +61,7 @@ watch(
:key="index"
>
<q-input
lazy-rules="ondemand"
ref="inputName"
:for="`input-work-name-${index}`"
dense