Код: Выделить всё
1.10.0Вот что у меня сейчас: < /p>
Код: Выделить всё
import ipyvuetify as v
import traitlets
from typing import Annotated
import enum
class ColorSelector(v.VuetifyTemplate):
items = traitlets.List(traitlets.Dict(traitlets.Unicode()), default_value=[{"name": "test", "value": "test"}]).tag(sync=True)
selected = traitlets.Unicode(default_value=None, allow_none=True).tag(sync=True)
label = traitlets.Unicode(default_value="Color", allow_none=True).tag(sync=True)
@traitlets.default("template")
def _template(self):
return '''
{{ item.value }}
'''
def vue_item_click(self, value):
print(repr(value))
self.selected = value
# Just a piece of the data for demo (Note: colors are HTML colors, so the #-value is optional for the demo)
class TestColor(str, enum.Enum):
PALEVIOLETRED: Annotated[str, "#DB7093"] = "PaleVioletRed"
YELLOWGREEN: Annotated[str, "#9ACD32"] = "YellowGreen"
LIGHTCORAL: Annotated[str, "#F08080"] = "LightCoral"
THISTLE: Annotated[str, "#D8BFD8"] = "Thistle"
wid_favorite_color = ColorSelector(
items = [
{
"name": c.name,
"value": c.value
}
for c in TestColor
],
label = "Favorite Color"
)
display(wid_favorite_color)
Результат, показывающий неверный выбор
Документация в слоте Vuetify Select Item ничего не говорит о необходимости восстановления поведения @Click < /code>. Следуя примеру при ipyvuetify для меню, я добавил атрибут @click и a: key , но если я использую item.value , результат, показанный при раскрывающемся вводе, является [объект Object] , если я использую item.name ничего не отображается. Кроме того, меню не закрывается, когда выбор сделан. Помощь! Я просто хочу раскрываться с цветами!
Подробнее здесь: https://stackoverflow.com/questions/793 ... own-widget