MCPcopy Create free account
hub / github.com/DioxusLabs/dioxus-components / LanguageSelect

Function LanguageSelect

preview/src/main.rs:522–560  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

520
521#[component]
522fn LanguageSelect() -> Element {
523 let mut current_lang = use_signal(|| Language::English);
524
525 rsx! {
526 document::Stylesheet { href: asset!("/assets/language-select.css") }
527 div { class: "dx-language-container",
528 span { class: "dx-language-select-container",
529 select {
530 class: "dx-language-select",
531 aria_label: "Language",
532 onchange: move |e| {
533 let name = e.value().parse().unwrap_or(current_lang.to_string());
534 if let Ok(lang) = Language::from_str(&name) {
535 current_lang.set(lang);
536 }
537 let id = current_lang.read().id();
538 tracing::info!("Current lang: {id}");
539 // i18n().set_language(id);
540 },
541 for lang in Language::iter() {
542 option {
543 value: lang.to_string(),
544 selected: lang == *current_lang.read(),
545 {lang.display_name()}
546 }
547 }
548 }
549 span { class: "dx-language-select-value",
550 {current_lang.read().flag()}
551 ChevronDown {
552 class: "dx-select-expand-icon",
553 size: "24px",
554 stroke: "var(--secondary-color-4)",
555 }
556 }
557 }
558 }
559 }
560}
561
562#[component]
563fn ComponentCode(

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected