Leptos + Tauri 2 前端配置Trunk + SSG + 移动端热重载一次打通(Leptos 0.6 口径)

1. 三条 Checklist:每一条都对应一个真实的坑

1.1 用 SSG(别走 SSR)

Tauri 的工作方式更像“静态站点宿主”:你给它一份静态资源目录(HTML/CSS/JS/WASM),它在 WebView 里加载并运行。官方明确:Tauri 不官方支持基于服务器的方案(SSR),因此要用 SSG/SPA/MPA 这类静态路线。 (Tauri)

这对 Leptos 意味着:在 Tauri 里通常跑的是 WASM 前端(客户端渲染),而不是把 Leptos 的服务端渲染端也一起塞进去。

1.2 serve.ws_protocol = "ws":移动端热重载的关键开关

在移动端开发时(Android/iOS 真机或模拟器),热重载 websocket 更容易因为协议/网络环境出现连接问题。官方建议在 Trunk 里显式设置:

  • ws_protocol = "ws"

确保热重载 websocket 能正常连上。 (Tauri)

1.3 开启 withGlobalTauri:让 window.__TAURI__ 可用,WASM 才好“抓”到 Tauri API

Leptos(WASM)要调用 Tauri API,最常见的桥接方式之一就是通过浏览器全局对象拿到 window.__TAURI__,再用 wasm-bindgen 或 JS interop 访问。官方要求在 Tauri 配置里打开:

  • app.withGlobalTauri = true

这样 window.__TAURI__ 才会被注入。 (Tauri)

2. 示例配置 1:src-tauri/tauri.conf.json(告诉 Tauri:怎么跑 Trunk、资源在哪)

把下面这段放到 src-tauri/tauri.conf.json(或合并进你的配置):

{"build":{"beforeDevCommand":"trunk serve","devUrl":"http://localhost:1420","beforeBuildCommand":"trunk build","frontendDist":"../dist"},"app":{"withGlobalTauri":true}}

这段配置分别解决什么:

  • beforeDevCommand: trunk serve
    你执行 cargo tauri dev 时,Tauri 会先帮你启动 Trunk 的开发服务器。
  • devUrl: http://localhost:1420
    Tauri 开发模式加载的页面地址就是这个(Trunk 默认端口常用 1420)。
  • beforeBuildCommand: trunk build
    你执行 cargo tauri build 时,先把 Leptos 编译成静态资源。
  • frontendDist: ../dist
    Trunk build 的输出目录(注意这是相对 src-tauri/ 的路径,所以通常是 ../dist)。
  • withGlobalTauri: true
    注入 window.__TAURI__,方便 WASM/vanilla JS 访问。 (Tauri)

3. 示例配置 2:Trunk.toml(Trunk 怎么 build、怎么 serve、怎么热重载)

在项目根目录创建/修改 Trunk.toml

[build] target = "./index.html" [watch] ignore = ["./src-tauri"] [serve] port = 1420 open = false ws_protocol = "ws" 

这里的重点:

  • [build].target = "./index.html"
    指定构建入口页面(Trunk 以它为入口组织资源与 wasm 输出)。
  • [watch].ignore = ["./src-tauri"]
    避免 Trunk 监听 Rust/Tauri 工程目录导致无意义的重编译或文件句柄压力(特别是 Windows/大型工程时会明显)。
  • [serve].ws_protocol = "ws"
    移动端热重载稳定性的关键项。 (Tauri)

4. 开发与构建:你实际只需要记住两条命令

开发(桌面):

cargo tauri dev 

发布构建:

cargo tauri build 

因为你已经在 tauri.conf.json 里配置了 beforeDevCommand/beforeBuildCommand,所以通常不需要你手动先跑 trunk serve/build

5. WASM 侧怎么用 Tauri API(思路)

开启 withGlobalTauri 后,window.__TAURI__ 会存在。官方 JS API 文档也明确:使用全局对象需要这个开关。 (Tauri)

在 Leptos/WASM 里常见做法是:

  • wasm-bindgen / web-syswindow 上取 __TAURI__
  • 再调用你需要的模块(例如 event、window、path、plugin 等)

如果你更偏工程化,也可以在前端用一层 thin wrapper:把需要的 Tauri 能力封装成少量 JS 函数,再让 WASM 调这些函数,边界更清晰、类型更可控。

6. 常见问题速查

  • 启动后白屏,但浏览器访问 http://localhost:1420 正常
    优先检查 tauri.conf.json 里的 devUrl 端口是否与 Trunk 一致,以及是否启动了 trunk serve(看终端输出)。
  • 热重载在移动端不工作
    先确认 Trunk.tomlws_protocol = "ws" 已设置。 (Tauri)
  • WASM 里拿不到 window.__TAURI__
    检查 app.withGlobalTauri 是否为 true,并确认你是在 Tauri 窗口里运行(不是纯浏览器环境)。 (Tauri)

Read more

[AI实战]Ubuntu 下安装OpenClaw——从零搭建你的专属AI助理

[AI实战]Ubuntu 下安装OpenClaw——从零搭建你的专属AI助理

[AI实战]Ubuntu 下安装OpenClaw——从零搭建你的专属AI助理 前言 OpenClaw是一款功能强大的AI助理框架,支持自定义技能、多模型接入,并能通过聊天软件与你交互。本文将手把手带你在Ubuntu系统上完成OpenClaw的安装与配置,并实现外部安全访问。无论你是AI爱好者还是开发者,都能通过本文快速拥有一个属于自己的AI助理。 环境准备: * 操作系统:Ubuntu 20.04 / 22.04 / 24.04(本文以24.04为例) * 权限:需要使用root或拥有sudo权限的用户 * 网络:能够访问GitHub及npm源(建议使用国内镜像加速) 一、升级Node.js至v22+ OpenClaw要求Node.js版本≥22.0.0,低版本会导致npm安装失败。若系统已安装其他版本,请务必升级。 方法一:使用nvm(推荐,便于多版本管理) 1. 安装nvm curl -o- https://raw.

Windows系统安装Cursor与远程调用本地模型QWQ32B实现AI辅助开发

Windows系统安装Cursor与远程调用本地模型QWQ32B实现AI辅助开发

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老导航檀越剑指大厂系列:全面总结 java 核心技术,jvm,并发编程 redis,kafka,Spring,微服务等常用开发工具系列:常用的开发工具,IDEA,Mac,Alfred,Git,typora 等数据库系列:详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等新空间代码工作室:提供各种软件服务,承接各种毕业设计,毕业论文等懒人运维系列:总结好用的命令,解放双手不香吗?能用一个命令完成绝不用两个操作数据结构与算法系列:总结数据结构和算法,不同类型针对性训练,提升编程思维,剑指大厂 非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨ 博客目录 * 前言

AI Harness 工程:Agent 能跑起来的那一层到底是什么?

AI Harness 工程:Agent 能跑起来的那一层到底是什么?

AI Harness 工程的崛起——Agent 真正跑起来的那一层 关于构建 AI Agent,业界通常谈的是三种架构路径:SDK、Frameworks、Scaffolding。这三种方式各自站在灵活性与结构性的不同位置,也各有适用场景。 但 2026 年悄悄冒出了第四种模式,而且直接架在这三种之上——它叫 Harness。 OpenAI 和 Anthropic 现在都正式用了这个词。Martin Fowler 写过专门分析它的文章,arXiv 上也有论文给出了形式化定义。这不是什么炒作出来的新词,而是那层一直缺位、却决定 AI Agent 能不能在生产环境里真正跑起来的架构层。 Harness 到底是什么? 先把一件事说清楚:Harness 不是 Agent 本身。 它是管理 Agent 如何运行的那套软件系统,负责处理完整的生命周期——工具调用、内存、重试、人工审批、

最新!2026年3月全球大模型全景:国产登顶、百万上下文、智能体爆发,AI进入实用新纪元

最新!2026年3月全球大模型全景:国产登顶、百万上下文、智能体爆发,AI进入实用新纪元

🔥个人主页:北极的代码(欢迎来访) 🎬作者简介:java后端学习者 ❄️个人专栏:苍穹外卖日记,SSM框架深入,JavaWeb ✨命运的结局尽可永在,不屈的挑战却不可须臾或缺! 前言:2026年3月,全球大模型领域迎来史诗级爆发,OpenAI、谷歌等海外巨头持续突破技术边界,国产大模型实现全球调用量反超、旗舰模型登顶国际盲测的双重突破。本文汇总3月国内外大模型最新动态、核心技术趋势、产业落地进展,解读AI从“参数内卷”走向“实用落地”的关键变革,助力开发者把握行业前沿。 2026年3月,全球大模型领域迎来史诗级密集爆发:OpenAI、谷歌、Meta等海外巨头持续领跑技术边界,中国大模型则实现全球调用量反超、旗舰模型登顶国际盲测、端侧与行业应用全面落地的三重突破。从百万Token上下文成为标配,到原生多模态与电脑控制能力成熟,再到AI智能体(Agent)从概念走向规模化商用,大模型正式告别“参数内卷”,进入效率优先、场景为王、生态重构的实用主义时代。 一、国际巨头:上下文军备竞赛白热化,Agent能力全面进化 3月海外巨头密集发布新版本,