Spaces:
Running
Running
| import gradio as gr | |
| import modelscope_studio.components.antd as antd | |
| import modelscope_studio.components.base as ms | |
| def on_change(e: gr.EventData, state_value): | |
| page = e._data["payload"][0] | |
| page_size = e._data["payload"][1] | |
| state_value["page"] = page | |
| state_value["page_size"] = page_size | |
| return state_value | |
| def on_click(state_value): | |
| gr.Info( | |
| f"Page: {state_value['page']}, Page Size: {state_value['page_size']}") | |
| with gr.Blocks() as demo: | |
| state = gr.State({"page": 1, "page_size": 10}) | |
| with ms.Application(): | |
| with antd.ConfigProvider(): | |
| with antd.Flex(vertical=True, gap="middle"): | |
| pagination = antd.Pagination( | |
| total=85, | |
| show_quick_jumper=True, | |
| show_size_changer=True, | |
| ) | |
| btn = antd.Button("Show me the page", | |
| type="primary", | |
| block=True) | |
| pagination.change(fn=on_change, inputs=[state], outputs=[state]) | |
| btn.click(fn=on_click, inputs=[state], outputs=[btn]) | |
| if __name__ == "__main__": | |
| demo.queue().launch() | |