原生渲染
渲染为真实 Flutter 组件,非 WebView。
Applet 是一个基于 Flutter 的 JavaScript 热更新框架。
Applet 面向需要原生 Flutter UI、同时希望获得 SwiftUI / Jetpack Compose 式声明式 脚本体验的团队:函数描述当前状态下的 UI,回调更新状态,Flutter 负责渲染。
原生渲染
渲染为真实 Flutter 组件,非 WebView。
JavaScript
默认使用 ES module、局部状态、闭包回调。
贴近 Flutter
Material、Cupertino、你所熟悉的 Flutter。
面向生产
完善的运行时和热更新交付,值得信赖。
Applet 借鉴 SwiftUI 和 Jetpack Compose:用函数描述当前状态下的 UI。 不同的是,这些函数来自 Flutter 运行时加载的 JavaScript 模块。
import "@app/material";
export default function App() { const count = State(0);
return MaterialApp({ theme: ThemeData({ useMaterial3: true, colorScheme: ColorScheme.fromSeed({ seedColor: "#006a6a" }), }), home: Scaffold({ appBar: AppBar({ title: Text("Applet") }), body: Center( VStack( Text("Count: " + count).style({ theme: "headlineMedium" }), FilledButton.icon({ icon: Icon(Icons.add), label: Text("Increment"), onPressed: () => count.update((value) => value + 1), }) ).gap(12).min() ), }), });}