Golang:使用wellington/go-libsass对CSS进行预处理

wellington/go-libsass是一个用于预处理CSS文件的库,采用 Go封装,100% 与 Sass 兼容的 libsass 项目

不过需要依赖libsass,现在已经过时了,可以考虑使用dart-sass

文档

安装

bash 复制代码
go get github.com/wellington/go-libsass

代码示例

go 复制代码
package main

import (
    "os"

    "github.com/wellington/go-libsass"
)

func main() {
    // 指定输入
    input, _ := os.Open("style.scss")
    defer input.Close()

    // 指定输出
    output, _ := os.Create("out.css")
    defer output.Close()

    // 处理
    comp, _ := libsass.New(output, input)

    // 设置选项
    comp.Option(libsass.OutputStyle(libsass.EXPANDED_STYLE))

    // 运行处理
    comp.Run()
}

输入 style.scss

css 复制代码
div {
  p {
    color: black;
  }
}

输出 out.css

css 复制代码
div p {
  color: black;
}
相关推荐
程序员大阳1 小时前
副队长CSS教程(37)–transition 过渡
前端·css·transition·过渡
Amos_Web1 小时前
Rspack 源码解析(二十一):Cacheable 与 Storage 如何持久化编译结果
前端·rust·前端框架
可乐ea2 小时前
2000 个智能体把 Agent 重写成 Rust:编排流水线拆解
开发语言·后端·rust·多智能体协作·ai编程助手·智能体编排·rust重写
不是万能的豆学长2 小时前
排查Go服务40天后的内存泄漏问题
开发语言·后端·golang·go
Amos_Web2 小时前
Rspack 源码解析(二十二):ExternalsPlugin 如何在 Factorize 阶段换掉整个模块
前端·rust·前端框架
tachibana22 小时前
Go 语言 Map 的底层实现原理
开发语言·后端·golang·make
CappuccinoRose3 小时前
CSS 动效基础
前端·css·动画·animation·transition
百度一下吧3 小时前
CSS 伪类使用与实践:从入门到进阶
前端·css
百度一下吧3 小时前
CSS3 之后新增的特性:从 CSS4 到现代 CSS 的演进
前端·css·css3
tachibana23 小时前
Go语言里slice是怎么扩容的?
后端·golang·go·切片