Posting here because seems to be the same issue like with the other thing, prerender/hydration is out of sync.
For some reason, when I render the items with v-for like this
<template>
<div ref="sortableContainer" class="container">
<template v-if="items.length > 0"> <-- had to add this in order to eliminate the issue
<div :key="item" v-for="(item, index) in items">
<wwLayoutItemContext is-repeat :data="item" :item="null" :index="index">
<wwElement v-bind="content.itemContainer"/>
</wwLayoutItemContext>
</div>
</template>
</div>
</template>
In prerender after Publish it causes Hydration mismatch and looks like this with the first item being empty.
With the v-if, it at least visually seems to be working.
In editor works fine, but with Prerender, when I use collections, it causes me to have an empty flexbox slot at the start. This one seems like an issue on my side with wrong setup of the logic behind binding the collections.
The <script>
looks like this
import Sortable from 'sortablejs';
export default {
name: "simple",
display: "Simple",
props: {
content: { type: Object, required: true },
},
computed: {
items() {
return wwLib.wwCollection.getCollectionData(this.content.data) || [];
},
},
emits: ["trigger-event"],
mounted() {
if (window) {
const el = this.$refs.sortableContainer;
Sortable.create(el, {
group: "sameGroup",
onEnd: (evt) => {
this.$emit("trigger-event", { name: "drag:end", event: evt });
},
onMove: (evt) => {
},
});
}
}
};
I think pretty normal, nothing that could cause this. Seems like it might be caused by items() returning an empty array and that rendering as empty one item, but how to avoid that, other than looking for the length? Do you at WeWeb have any method/way to do this? The template thing is a little ugly imo. I could move it to the div also, but I think that v-if in this case might not be the best practice and if there is a way to avoid this @aurelie, I’d rather learn how 
I’m trying to make this work for everyone so I can share it, that’s why I just don’t turn off prerendering ahaha