Rust 与 C++ 的实时预览
在 Rust 或 C++ 中构建 Slint 应用程序时,
.slint 文件通常会预先编译为原生代码。
这意味着每次 UI 更改都需要重新编译并重启应用程序。
实时预览功能让你正在运行的应用程序监视磁盘上的 .slint 文件,
并在它们更改时自动重新加载。
你的业务逻辑保持连接,因此你无需重启即可迭代 UI。
它与 VS Code、
Slint LSP 和
Slint Viewer 中的实时预览相同。
同一个解释器加载并渲染你的 .slint 文件,因此 UI 的外观和行为都相同。
不同之处在于环境: 这里的预览在你的应用程序内部运行,并与你的业务逻辑相连。
启用实时预览后,
Slint 编译器不再提前编译你的组件,而是生成一个在运行时使用 Slint 解释器的接口。
每当 .slint 文件更改时,它都会从磁盘重新加载这些文件。
应用程序在重新加载期间保持运行,
属性、回调和模型都会保留。
如果某个 .slint 文件存在语法错误,则之前的版本会保持在屏幕上,直到错误被修复。
如果你更改了原生代码所交互的 Slint API,例如重命名从 Rust 或 C++ 使用的属性或回调,应用程序可能会终止。 请重新编译并重启以应用这些更改。
此功能仅用于开发。 不要在启用实时预览的情况下发布正式版本。
实时预览需要 live-preview Cargo 特性以及 SLINT_LIVE_PREVIEW 环境变量。
在构建应用程序时同时使用两者:
SLINT_LIVE_PREVIEW=1 cargo run --features slint/live-preview不要将 live-preview 添加到 Cargo.toml 的 [features] 部分。
请改用命令行上的 --features 标志,
以便它不会出现在你的常规构建中。
更多详情请参阅 live-preview 特性文档。
C++ 的实时预览需要使用启用解释器的 Slint 源码构建。
-
从源码构建 Slint,并启用
SLINT_FEATURE_LIVE_PREVIEWCMake 选项:Terminal window mkdir build && cd buildcmake -GNinja -DSLINT_FEATURE_LIVE_PREVIEW=ON path/to/slintcmake --build .bash -
编译你的应用程序,并设置
SLINT_LIVE_PREVIEW环境变量:Terminal window SLINT_LIVE_PREVIEW=1 cmake --build path/to/your/buildbash -
运行你的应用程序。 Slint 会从磁盘加载
.slint文件,并在你保存更改时重新加载它们。
更多详情请参阅 C++ 实时预览文档。
© 2026 SixtyFPS GmbH