From 7d36bac77fd0499796e0fa0c2298364844a7a691 Mon Sep 17 00:00:00 2001 From: ryan Date: Fri, 18 Apr 2025 14:53:55 +0300 Subject: [PATCH] fix(typeahead): fix the handler name generation --- src/components/typeahead_input.rs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/components/typeahead_input.rs b/src/components/typeahead_input.rs index 2eb0300..c43ba6b 100644 --- a/src/components/typeahead_input.rs +++ b/src/components/typeahead_input.rs @@ -1,3 +1,4 @@ + use leptos::*; use wasm_bindgen::prelude::*; use crate::models::item::WikidataSuggestion; @@ -295,12 +296,15 @@ fn initialize_typeahead( } }) as Box); - // Register global handler - let handler_name = format!("handler_{}", input_id); + // Register global handler + let handler_name = format!("handler_{}", input_id.replace("-", "_")); + + log!("[TYPEAHEAD] Registering handler with name: {}", handler_name); + js_sys::Reflect::set( &js_sys::global(), &handler_name.clone().into(), - closure.as_ref(), + closure.as_ref().unchecked_ref(), ).unwrap(); closure.forget(); @@ -360,7 +364,7 @@ fn initialize_typeahead( }} "#, id = input_id, - handler = handler_name.replace('-', "_") + handler = handler_name ); log!("[RUST] Initialization script: {}", init_script);