diff --git a/frontend/components/Domain/Recipe/RecipeCardSection.vue b/frontend/components/Domain/Recipe/RecipeCardSection.vue index a18eddab1aa4..88e73ef566a0 100644 --- a/frontend/components/Domain/Recipe/RecipeCardSection.vue +++ b/frontend/components/Domain/Recipe/RecipeCardSection.vue @@ -183,6 +183,10 @@ export default defineComponent({ type: String, default: null, }, + skipLoad: { + type: Boolean, + default: false + } }, setup(props, context) { const preferences = useUserSortPreferences(); @@ -233,6 +237,9 @@ export default defineComponent({ const { fetchMore } = useLazyRecipes(); onMounted(async () => { + if (props.skipLoad) { + return; + } const newRecipes = await fetchMore( page.value, diff --git a/frontend/components/Domain/Recipe/RecipeDialogSearch.vue b/frontend/components/Domain/Recipe/RecipeDialogSearch.vue index 9f4256e8648a..edf92827471a 100644 --- a/frontend/components/Domain/Recipe/RecipeDialogSearch.vue +++ b/frontend/components/Domain/Recipe/RecipeDialogSearch.vue @@ -65,7 +65,7 @@ export default defineComponent({ }, setup(_, context) { - const { refreshRecipes } = useRecipes(true, false); + const { refreshRecipes } = useRecipes(true, false, true); const state = reactive({ loading: false, diff --git a/frontend/composables/recipes/use-recipes.ts b/frontend/composables/recipes/use-recipes.ts index 476adca0df22..f56c25f2ab47 100644 --- a/frontend/composables/recipes/use-recipes.ts +++ b/frontend/composables/recipes/use-recipes.ts @@ -67,7 +67,7 @@ export const useLazyRecipes = function () { }; }; -export const useRecipes = (all = false, fetchRecipes = true) => { +export const useRecipes = (all = false, fetchRecipes = true, loadFood = false) => { const api = useUserApi(); // recipes is non-reactive!! @@ -88,7 +88,7 @@ export const useRecipes = (all = false, fetchRecipes = true) => { })(); async function refreshRecipes() { - const { data } = await api.recipes.getAll(page, perPage, { loadFood: true, orderBy: "created_at" }); + const { data } = await api.recipes.getAll(page, perPage, { loadFood, orderBy: "created_at" }); if (data) { recipes.value = data.items; } diff --git a/frontend/pages/index.vue b/frontend/pages/index.vue index d603325835f8..c9b479c2912c 100644 --- a/frontend/pages/index.vue +++ b/frontend/pages/index.vue @@ -4,6 +4,7 @@ :icon="$globals.icons.primary" :title="$t('general.recent')" :recipes="recentRecipes" + :skip-load="true" > diff --git a/frontend/pages/search.vue b/frontend/pages/search.vue index 969f65809f43..ba11dfcf4dcb 100644 --- a/frontend/pages/search.vue +++ b/frontend/pages/search.vue @@ -134,7 +134,7 @@ export default defineComponent({ RecipeCardSection, }, setup() { - const { assignSorted } = useRecipes(true); + const { assignSorted } = useRecipes(true, true, true); // ================================================================ // Advanced Toggle