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;
}
相关推荐
朝阳398 分钟前
CSS【模块】CSS Modules
css
PieroPc20 分钟前
FastAPI 和 Html+css+js 开发的 PDF打印服务器 连接到服务器的物理打印机打印
css·html·fastapi
techdashen13 小时前
Rust OnceCell 深度解析:延迟初始化的优雅解决方案
开发语言·oracle·rust
superman超哥14 小时前
Serde 的零成本抽象设计:深入理解 Rust 序列化框架的哲学
开发语言·rust·开发工具·编程语言·rust序列化
星辰徐哥14 小时前
Rust函数与流程控制——构建逻辑清晰的系统级程序
开发语言·后端·rust
源代码•宸14 小时前
Leetcode—404. 左叶子之和【简单】
经验分享·后端·算法·leetcode·职场和发展·golang·dfs
superman超哥16 小时前
序列化格式的灵活切换:Serde 生态的统一抽象力量
开发语言·rust·编程语言·rust serde·序列化格式·rust序列化格式
快乐点吧16 小时前
使用 data-属性和 CSS 属性选择器实现状态样式控制
前端·css
Grassto18 小时前
10 Go 是如何下载第三方包的?GOPROXY 与源码解析
后端·golang·go·go module
源代码•宸18 小时前
Leetcode—513. 找树左下角的值【中等】
经验分享·算法·leetcode·面试·职场和发展·golang·dfs