#6825 - VnTable V1 #396
Labels
No Milestone
No Assignees
4 Participants
Notifications
Total Time Spent: 2 hours 21 minutes
Due Date
jsegarra
2 hours 21 minutes
No due date set.
Dependencies
No dependencies set.
Reference: verdnatura/salix-front#396
Loading…
Reference in New Issue
No description provided.
Delete Branch "6825-vnTable"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
@ -0,0 +447,4 @@
width: 12px;
}
*::-webkit-scrollbar-track {
scrollbar en app.scss
/* ===== Scrollbar CSS ===== /
/ Firefox */
scrollbar-width: auto;
scrollbar-color: $primary;
}
/* Chrome, Edge, and Safari */
*::-webkit-scrollbar {
width: 10px;
height: 10px;
}
*::-webkit-scrollbar-thumb {
background-color: $primary;
border-radius: 10px;
}
WIP: 6825-vnTableto 6825-vnTable@ -0,0 +19,4 @@
<span
v-for="col of columns"
:key="col.name"
@click="stopEventPropagation($event)"
Si quitas $event, se le pasa igualmente
@ -0,0 +38,4 @@
<QIcon v-else :name="col.chip.icon" color="primary-light" />
</QChip>
</span>
<slot name="afterChip" :row="row"></slot>
Duda, si hay uno, podemos quitar el nombre?
Porque revisando una instancia me ha dado a entender que había mas de uno, y no es así.
pongo un beforeChip asi estan las dos posibilidades
@ -0,0 +9,4 @@
import VnInputDate from 'components/common/VnInputDate.vue';
import VnComponent from 'components/common/VnComponent.vue';
const model = defineModel();
Me sale un warning en consola
He tenido que poner
const model = defineModel(undefined, { required: true });
para que no sale el warning, yo creo que es mas cosa de el linter...De hecho lo uso como esta en la documentación: https://vuejs.org/guide/components/v-model
@ -0,0 +27,4 @@
default: 'params',
},
});
const model = defineModel();
warning
Yo te iba a sugerir esta linea
// eslint-disable-next-line vue/require-prop-types
@ -0,0 +36,4 @@
'keyup.enter': () => addFilter(model.value),
remove: () => addFilter(null),
};
const components = {
Hay muchas lineas/props repetidas
Mi propuesta es definir un componente base donde se añadan atributos que sean genericos
Para input quedaría algo así:
Lo he probado y no funciona pq al fusionar objetos se fusionan de manera superficial. es decir los objetos anidados no se fusionan se machacan.
Quedando input como:
Habría que hacerlo a nivel de attrs, forceAttrs, etc
@ -0,0 +116,4 @@
}
function alignRow() {
if ($props.column.align == 'left') return 'justify-start items-start';
No creo que se definan mas posiciones o posiciones "custom", sino considerar cambiar por un switch o un objeto.
No soy demasiado fan de swtich la vd, pero cambiado
a
@ -0,0 +136,4 @@
>
<VnTableColumn
:column="$props.column"
:row="{}"
Se puede añadir default: () => {} a la definición de la columna?
@ -0,0 +143,4 @@
component-prop="columnFilter"
/>
</div>
<div v-else-if="showTitle" style="height: 45px"><!-- fixme! --></div>
fixme??
@ -0,0 +21,4 @@
},
defaultMode: {
type: String,
default: 'card', // 'table', 'card'
'card' se repite 5 veces
'table' se repite 7 veces
Propuesta, definir constantes
Si me cuentas las propiedades de los objetos si jajaj
Pasado a constantes
@ -0,0 +156,4 @@
router.push({ path: `/${$props.redirect}/${id}` });
}
function stopEventPropagation(event) {
Revisar las llamadas porque no es necesario pasarle $event
@ -0,0 +187,4 @@
>
<QScrollArea class="fit">
<VnFilterPanel
:data-key="$attrs['data-key']"
Se repite 4 veces
Inevitable
@ -0,0 +211,4 @@
</VnFilterPanel>
</QScrollArea>
</QDrawer>
<!-- class in div to fix warn-->
👀
Es un comentario
@ -0,0 +246,4 @@
<slot name="top-left"></slot>
</template>
<template #top-right>
<!-- <QBtn
👀
@ -0,0 +287,4 @@
<QTh auto-width class="sticky" />
</template>
<template #body-cell-tableStatus="{ col, row }">
<QTd auto-width :class="`text-${col.align ?? 'left'}`">
Este template de class se repite 3 veces
6825-vnTableto #6825 - VnTable#6825 - VnTableto #6825 - VnTable V1gracies
@ -166,3 +170,1 @@
if (isNaN(value) && !isNaN(Date.parse(value))) {
return toDate(value);
}
if (typeof value === 'boolean') return value ? t('Yes') : t('No');
Si la operacion ternaria es para el valor de la traducción, porque no ponerla dentro de la funcion t?
Otra cosa es, hacen falta las traducciones? Porque en globals tenemos yes y no