Oke i took a look at your code and i think i might have found the solution.
first of all, you have this piece of code
$w('#selectionTags1').onChange((event) => {
const selectedTags = $w('#selectionTags1').value; loadDataToRepeater(selectedTags);
})
Go to your seletionTags1 element and open the properties (right click → properties)
Go to the onChange event and name it, press oke and it will make a piece of code for it.
add your code inside it
it should look something like this:
export function selectionTags1_change(event) {
const selectedTags = $w('#selectionTags1').value; loadDataToRepeater(selectedTags);
})
also, try to log your data so you know what is passed trough.
do:
console.log(selectedCatagories)
right before dataQuery to see if you have the right value passed.
then about this piece of code:
function setRepeatedItemsInRepeater() {
$w('#repeater2').onItemReady(($item, itemData) => { $item('#recipeImage').src = itemData.image;
$item('#recipeImage').tooltip = itemData.recipeName; $item('#recipeName').text = itemData.recipeName
$item('#chefName').text = 'By ' + itemData.chefName;
})}
it means, when the repeater is loaded (on.itemReady)
it will use the
itemData.image and put it to the imageSource of recipeImage
itemData.recipeName and add it as a tooltip to the image
itemData.recipeName will change the text of recipeName
and itemData.chefName will change the text of chefName.
it has to be in the onItemReady so it can loop trough all the items and add it to the right element in the repeater.
Kind regards,
Kristof