Hi. I am facing this same issue in two (non-public) plugins of mine. I’ve been assessing the core source code and change logs to no avail…
In my plugin #1, I got it solved by reworking how items are loaded into the component. Here is what I had working pre-3.7:
<k-items if="subscribers.length" :layout="layout" :size="size">
<k-item
v-for="(subscriber, index) in subscribers"
:layout="layout"
:key="index"
:info="subscriber.status"
:text="subscriber.email"
:options="'myplugin/subscriber/' + subscriber.id"
/>
</k-items>
In 3.7, the <k-items>
got rendered into a <div class="k-draggable k-items k-list-items" data-layout="list" data-size="default"></div>
as could be expected, but it remained empty – the k-item
elements never showed up.
After a bit of experimentation, I got this solved by feeding the items directly into the k-items component (required a bit of adaptation in the backend, but no big deal):
<k-items v-if="subscribers.length" :layout="layout" :size="size" :items="subscribers" />
Now I’m facing the same issue in another plugin, but this time I cannot apply the same strategy as I am not using the core component’s default items (i.e. cannot feed the data array directly into the k-items
component) but I have a custom component for each item:
<k-items v-if="bookmarks.length" :layout="list">
<bookmarkitem
v-for="(bookmark, index) in bookmarks"
:image="bookmark.image"
:layout="layout"
:key="index"
:link="bookmark.link"
:bookmark="bookmark"
:text="bookmark.title"
/>
</k-items>
Again, while this worked flawlessly in 3.6, I now get the k-items
component rendering an empty div
and none of the items are rendered using my custom bookmarkitem
component.
The solution outlined by @Microman (removing the k-items
component; in my case replacing the tag with a div
) does indeed restore the display of my custom component list, but I am losing some of its formatting. I have a hunch that there must be a very simple solution to this, but I cannot figure out what change in the k-items
component may be causing this?