3 个不稳定版本
0.2.2 | 2024 年 6 月 15 日 |
---|---|
0.2.1 | 2024 年 6 月 15 日 |
0.2.0 |
|
0.1.0 | 2024 年 6 月 11 日 |
#223 in 模板引擎
12KB
238 代码行
sailfish-minify
为 sailfish 提供的简单而实用的压缩支持,默认使用 html-minifier
重要!
默认情况下,sailfish-minify 也会压缩其组件,但是如果您想禁用此行为,可以不使用 "minifiy-components" 进行编译。此外,组件使用 "父" 模板选项进行压缩,但是当有多个父模板使用相同组件但使用不同的压缩选项时,此行为尚未经过测试。
示例
use sailfish::TemplateOnce;
#[derive(Debug, sailfish_minify::TemplateOnce)]
#[templ(path = "test.stpl")] // Notice the use of templ instead of template
// #[min_with(HTMLMinifier)] // Default is HTMLMinifier anyway
// #[min_with(Custom(html-minifier --collapse-whitespace))] // You can even use custom commands
struct MinifiedTestTemplate<'a> {
s: &'a str
}
#[derive(Debug, TemplateOnce)]
#[template(path = "test.stpl")]
struct TestTemplate<'a> {
s: &'a str
}
fn main() {
println!("Unminified size: {} chars", TestTemplate { s: "test" }.render_once().unwrap().len());
println!("Minified size: {} chars", MinifiedTestTemplate { s: "test" }.render_once().unwrap().len());
}
输出
Unminified size: 2238 chars
Minified size: 23 chars
依赖项
~3–11MB
~114K SLoC