Всё началось с бага, на который я убил вечер. В Tauri фронтенд вызывает Rust-команды так:
const user = await invoke("get_user", { userId: 42 });
Строка с именем команды, объект с аргументами, никакой проверки типов. У меня в Rust аргумент назывался user_id, и я честно передал user_id с фронта. В рантайме прилетело что-то вроде invalid args 'userId' for command 'get_user' — Tauri по умолчанию переименовывает snake_case-аргументы в camelCase. Это написано в документации, я это даже знал. Но знание, которое не проверяет компилятор, — не знание, а примета.
Дальше по классике: возвращаемый тип у invoke — anyЧитать полностью »



