refactor: refs #7701 make FormModel only read from url and deleted useless code
gitea/salix-front/pipeline/pr-dev There was a failure building this commit
Details
gitea/salix-front/pipeline/pr-dev There was a failure building this commit
Details
This commit is contained in:
parent
5d4479309f
commit
e4a0dae5b1
|
@ -103,9 +103,9 @@ const $props = defineProps({
|
|||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
searchUrl: {
|
||||
formUrl: {
|
||||
type: [String, Boolean],
|
||||
default: 'form',
|
||||
default: 'createForm',
|
||||
},
|
||||
});
|
||||
const emit = defineEmits(['onFetch', 'onDataSaved', 'submit']);
|
||||
|
@ -118,7 +118,10 @@ const isLoading = ref(false);
|
|||
// Si elegimos observar los cambios del form significa que inicialmente las actions estaran deshabilitadas
|
||||
const isResetting = ref(false);
|
||||
const hasChanges = ref(!$props.observeFormChanges);
|
||||
const originalData = computed(() => state.get(modelValue));
|
||||
let urlData = {};
|
||||
const originalData = computed(() => {
|
||||
return { ...urlData, ...state.get(modelValue) };
|
||||
});
|
||||
const formData = ref();
|
||||
const defaultButtons = computed(() => ({
|
||||
save: {
|
||||
|
@ -146,13 +149,14 @@ const submitForm = async (evt) => {
|
|||
}
|
||||
};
|
||||
|
||||
function getUrlData() {
|
||||
urlData = $props.formUrl
|
||||
? JSON.parse(route?.query[$props.formUrl] ?? '{}')
|
||||
: undefined;
|
||||
}
|
||||
|
||||
onMounted(async () => {
|
||||
const urlInitalData =
|
||||
$props.searchUrl && JSON.parse(route?.query[$props.searchUrl] ?? '{}');
|
||||
// asignar de nuevo a originalData genera un warning por lo que fallarán todos los test de front que usen FormModel
|
||||
// originalData.value = JSON.parse(
|
||||
// JSON.stringify(urlInitalData ?? $props.formInitialData ?? {}),
|
||||
// );
|
||||
getUrlData();
|
||||
nextTick(() => (componentIsRendered.value = true));
|
||||
|
||||
// Podemos enviarle al form la estructura de data inicial sin necesidad de fetchearla
|
||||
|
@ -201,23 +205,6 @@ watch(
|
|||
},
|
||||
);
|
||||
|
||||
// watch(
|
||||
// () => formData.value,
|
||||
// async (newData, oldData) => {
|
||||
// if (!newData || !Object.keys(newData).length) return;
|
||||
// if (!$props.searchUrl) return;
|
||||
// const urlParams = JSON.stringify(newData);
|
||||
// await nextTick();
|
||||
// router.replace({
|
||||
// query: {
|
||||
// ...route.query,
|
||||
// createForm: urlParams,
|
||||
// },
|
||||
// });
|
||||
// },
|
||||
// { deep: true },
|
||||
// );
|
||||
|
||||
onBeforeRouteLeave((to, from, next) => {
|
||||
if (hasChanges.value && $props.observeFormChanges)
|
||||
quasar.dialog({
|
||||
|
|
|
@ -227,7 +227,7 @@ onMounted(async () => {
|
|||
.map((c) => c.name),
|
||||
...['tableActions'],
|
||||
];
|
||||
createForm.value = $props.create;
|
||||
if ($props.create && route?.query?.createForm) showForm.value = true;
|
||||
});
|
||||
|
||||
onUnmounted(async () => {
|
||||
|
|
|
@ -10,9 +10,6 @@ const { t } = useI18n();
|
|||
const emit = defineEmits(['onDataSaved']);
|
||||
|
||||
const genusInputRef = ref(null);
|
||||
const genusFormData = reactive({
|
||||
name: 'test',
|
||||
});
|
||||
|
||||
const onDataSaved = (formData, requestResponse) => {
|
||||
emit('onDataSaved', formData, requestResponse);
|
||||
|
@ -29,7 +26,6 @@ onMounted(async () => {
|
|||
url-create="genera"
|
||||
model="itemGenus"
|
||||
:title="t('New genus')"
|
||||
:form-initial-data="genusFormData"
|
||||
@on-data-saved="onDataSaved"
|
||||
>
|
||||
<template #form-inputs="{ data }">
|
||||
|
|
|
@ -10,7 +10,6 @@ const { t } = useI18n();
|
|||
const emit = defineEmits(['onDataSaved']);
|
||||
|
||||
const specieInputRef = ref(null);
|
||||
const specieFormData = reactive({});
|
||||
|
||||
const onDataSaved = (formData, requestResponse) => {
|
||||
emit('onDataSaved', formData, requestResponse);
|
||||
|
@ -27,7 +26,6 @@ onMounted(async () => {
|
|||
url-create="species"
|
||||
model="itemSpecie"
|
||||
:title="t('New species')"
|
||||
:form-initial-data="specieFormData"
|
||||
@on-data-saved="onDataSaved"
|
||||
>
|
||||
<template #form-inputs="{ data }">
|
||||
|
|
|
@ -4,7 +4,6 @@ describe('Client web-access', () => {
|
|||
cy.viewport(1280, 720);
|
||||
cy.login('developer');
|
||||
});
|
||||
|
||||
it('Should test buttons ', () => {
|
||||
cy.visit('#/customer/1101/web-access');
|
||||
cy.get('.q-page').should('be.visible');
|
||||
|
|
Loading…
Reference in New Issue