codecamp

Tauri Rust传递参数

命令处理程序可以接受参数:

#[tauri::command]
fn my_custom_command(invoke_message: String) {
  println!("I was invoked from JS, with this message: {}", invoke_message);
}

参数应该作为带有驼峰式键的 JSON 对象传递:

invoke('my_custom_command', { invokeMessage: 'Hello!' })

参数可以是任何类型,只要它们实现了 serde::Deserialize

请注意,在 Rust 中使用 snake_case 声明参数时,参数会转换为 JavaScript 的 camelCase。
要在 JavaScript 中使用snake_case,您必须在语句中声明它:tauri::command

#[tauri::command(rename_all = "snake_case")]
fn my_custom_command(invoke_message: String) {
  println!("I was invoked from JS, with this message: {}", invoke_message);
}

对应的 JavaScript:

invoke('my_custom_command', { invoke_message: 'Hello!' })


Tauri Rust基本示例
Tauri Rust返回数据
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

Tauri 指南

Tauri 特性

Tauri 插件

Tauri 应用程序接口

Tauri JavaScript/TypeScript

Tauri 命令行界面

Tauri 进程

Tauri 参考

Tauri WebView 版本

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }