在ipyvuetify中创建可滚动的布局

时间:2020-10-07 09:12:14

标签: python jupyter-notebook vuetify.js voila

我正在使用ipyvuetify lib为我的jupyter笔记本创建漂亮的voila布局。我尝试创建一个受crahan/ipyfilechooser启发的文件选择器。

所以当文件夹内容太大时,我想创建一个可滚动列表:

folder_select = v.Select(items=get_parent_path('/home/prambaud'), label='folder', v_model='/home/prambaud')
file_list = v.List(
    dense=True, 
    color='grey lighten-4', 
    max_height='300px',
    flat=True,
    children=[
        v.ListItemGroup(
            active_class="border",
            children=get_items('/home/prambaud/'),
            v_model=None
        )
    ]
)

分别显示给我,我需要的确切行为是:文件夹选择器位于顶部,我可以滚动这些项目

display(folder_select)
display(file_list)

Capture d’écran 2020-10-07 à 10 59 28

但是我需要将它们添加到一个小部件中,以将它们用作独立的输入组件,所以我创建了一个布局:

file_input = v.Layout(
    v_model=None,
    row=True,
    class_='pa-5',
    align_center=True,
    style_='300px',
    children=[
        v.Flex(xs12=True, children=[folder_select]),
        v.Flex(xs12=True, children=[file_list])
    ]
)

和max_heigth参数不再受尊重,并且所有布局变得可滚动,而不仅仅是文件列表:

Capture d’écran 2020-10-07 à 11 02 25

如果我尝试将其包含在更复杂的布局中,那就更糟了: Capture d’écran 2020-10-07 à 11 03 38

这是一个已知的错误吗?有没有一种方法可以在另一个布局中创建可滚动的布局?

1 个答案:

答案 0 :(得分:1)

您需要设置样式overflow: auto才能隐藏溢出的内容并显示滚动条。

...
max_height='300px',
style_='overflow: auto',
...