ntohq / buefy-next

Lightweight UI components for Vue.js (Vue3) based on Bulma
https://v3.buefy.org
MIT License
121 stars 10 forks source link

`_unregisterItem` of `ProviderParentMixin` won't work if child items do not have `value` #194

Closed kikuomax closed 8 months ago

kikuomax commented 9 months ago

Overview of the problem

Buefy version: [0.1.2] Vuejs version: [3.x] OS/Browser: should not matter

Description

See https://github.com/ntohq/buefy-next/blob/20675f127c13ecf216e457d49c5d34e2d7516005/packages/buefy-next/src/utils/ProviderParentMixin.js#L37-L39

Steps to reproduce

Expected behavior

_unregisterItem should work if child items lack value.

Actual behavior

_untegisterItem won't work if child items lack value.

kikuomax commented 9 months ago

ProviderParentMixin expects children mixing in InjectedChildMixin. Users of InjectedChildMixin:

kikuomax commented 9 months ago

I think ProgressBar should stop using InjectedChildMixin because its parent Progress does not use any functionalities of ProviderParentMixin. Providing Progress instance to ProgressBar is sufficient.

kikuomax commented 9 months ago

DropdownItem neither has to use InjectedChildMixin because its parent Dropdown does not use any functionalities of ProviderParentMixin. Providing Dropdown instance to DropdownItem is sufficient.

kikuomax commented 8 months ago

_unregisterItem won't work for CarouselItem due to missing value.