如何正确使用lightningcss的minify方法获取压缩输出?
解决lightningcss minify后输出为空的问题
问题核心在于lightningcss的minify方法不会修改原StyleSheet实例,而是返回一个新的压缩后StyleSheet对象。你当前的代码没有接收这个返回值,导致打印的不是压缩后的结果。
正确的使用方式如下:
let fs = FileProvider::new(); let mut bundler = Bundler::new(&fs, None, ParserOptions::default()); let stylesheet = bundler.bundle(Path::new("./assets/css/global.css")).unwrap(); // 接收minify返回的新压缩样式表实例 let minified_stylesheet = stylesheet.minify(MinifyOptions::default()).unwrap(); // 基于压缩后的实例生成CSS代码并打印 println!("{}", minified_stylesheet.to_css(PrinterOptions::default()).unwrap().code);
额外说明:
minify方法返回Result<StyleSheet, Error>类型,需通过unwrap或合理的错误处理获取有效实例- 可通过修改
MinifyOptions配置自定义压缩规则,比如移除注释、缩短类名等
内容的提问来源于stack exchange,提问作者eduard
相关产品推荐
相关产品推荐

