0

我一直在尝试在 Justpy 中创建一个过滤下拉菜单。我一直在使用 QSelect 组件来执行此操作。这里的第二个下拉菜单是我想要构建的。

我可以让下拉菜单使用输入事件来填充和显示我想要的值。我可以通过这种方式手动选择我想要的值。我的问题是当我使用过滤器事件时,下拉列表不再填充。相反,我得到一个旋转的“加载”图标。

这是我的代码:

import justpy as jp

dropdown_items = [123, 456, 789]

def filter_event(self, msg):
    # For testing purposes, just update the list of items in the dropdown to what was typed into dropdown
    new_items = [msg.value]
    self.options = new_items

def filter_test(request):
    wp = jp.QuasarPage(dark=True, tailwind=True, title="Filter Test Page")
    d1 = jp.QDiv(text="Select a number", classes="q-pa-md text-xl", style="max-width: 600px", a=wp)

    dropdown = jp.QSelect(label="Test dropdown", options=dropdown_items, multiple=True, use_input=True, clearable=True, use_chips=True, padding=True, bordered=True, a=d1)
    dropdown.on('filter', filter_event)

    return wp

jp.justpy(filter_test)

我试过在我的事件处理程序中调用 Quasar 方法,例如:wp.dropdown.run_method(f'filter({msg.value})', msg.websocket),但这并没有改变任何东西。我已经尝试过使用不同的事件,填充不同的道具等,但我无法更接近。

也许我需要为 QSelect 组件添加一个模型,但我真的不知道那会是什么样子。

我想我错过了一些非常简单的东西。我对 JavaScript 没有任何经验,因此找到解决方案非常困难。非常感谢任何能让我更接近解决方案的提示或指导。谢谢你。

4

0 回答 0