Page · Python
frontends/nicegui/repeated_contacts.py
from nicegui import ui
def repeated_contacts():
contacts = {f'c{index}': {} for index in range(1, 7)}
with ui.element('div').classes('contact-cards'):
for index in range(1, 7):
contact = contacts[f'c{index}']
with ui.element('section').classes('contact-box').props(f'aria-label="Contact {index}"'):
ui.html(f'Contact {index}', tag='h2')
with ui.element('div').classes('input-fields'):
ui.input('First name').on('blur', lambda event, contact=contact: contact.update(first_name=event.sender.value))
ui.input('Last name').on('blur', lambda event, contact=contact: contact.update(last_name=event.sender.value))
ui.input('Phone').on('blur', lambda event, contact=contact: contact.update(phone=event.sender.value))
ui.input('Email').on('blur', lambda event, contact=contact: contact.update(email=event.sender.value))