Core Dioxus — Screen
Overview
Criar telas (screens) Dioxus com separação estrita entre UI (#[component]) e lógica (hooks/use cases). Nenhum componente faz HTTP direto — delega para use cases (core-use-case-rs).
Guidelines
- Toda tela é um
#[component]emfeatures/<bc>/presentation/. - Estado reativo com
use_signal/use_memo; efeitos viause_effect. - Listagens usam paginação e chamam o use case (nunca o repository).
- O
Resultdo domínio (shared_kernel::Result<T>—Err(Vec<DomainError>)) é exposto na tela: renderizar toda a lista de erros (<For>), nunca só o primeiro. - Nenhum
reqwest/dioxus::httpna screen — somente no adapter (verbackend-dioxus-api-client-rs).
Workflow
- Definir
UiState(loading / data / error). - Criar hook
use_*(ex.:use_customer_list) que recebe o use case. - Criar
#[component] ApplicationScreenque usa o hook e renderiza cada caso do estado. - Registrar no router (
core-dioxus-navigation-rs).
References
- Consultar
references/dioxus-screen-pattern.mdpara templates. - Consultar
../core-use-case-rs/SKILL.mdpara o use case. - Consultar
../config-mobile-dioxus-rs/references/dioxus-namespace-layout.md.
Global Standards
- Consultar
../skills-standards.mdpara padrões globais de nomenclatura e convenções gerais entre skills.