如何将scss编译成css的呢?

420 阅读2分钟

今天有个前端新人问我如何将scss编译成css?

虽然这个问题很简单,但这是相对于有工作经验的前端来说,很多新人都不一定知道。

有时,你知道的事情,你觉得自然而然,简单明了,但别人并不一定知道,明白。

这就是所谓的信息差,现今社会环境不正是利用这种信息差进行获利?

既然有需求,就要提供服务,将我知道,理解的内容分享出来。

下面言归正传,正文开始。

Scss即是Sass,是Sassy css的简写。它是css预处理语言,完全兼容所有版本的css,并且拓展了更多的功能和特性。

image.png

一般,浏览器无法直接运行sass,需要将它编译成css才行执行。

那如何将Sass转换成css呢?

1、命令行编译

Sass是基于Ruby语言开发,因此需要安装Ruby环境。然后通过Ruby自带一个叫做RubyGems的系统安装Sass。最后可以就可以使用命令行进行编译成css了。

//单文件转换命令
sass input.scss output.css

//单文件监听命令
sass --watch input.scss:output.css

//如果你有很多的sass文件的目录,你也可以告诉sass监听整个目录:
sass --watch app/sass:public/stylesheets

具体Ruby和Sass的安装可以查看官网:Sass世界上最成熟、稳定和强大的CSS扩展语言 | Sass中文网

2、通过编译软件

可以通过日常开发使用的IDE工具进行编译,一般开发工具都带有插件,需要安装。

如果你使用vscode,可以安装一个名为easy sass的插件。

image.png

如果你使用sublime,可以使用插件SASS-Build进行编译。

也可以安装一个独立编译软件koala。 Koala - LESS/Sass/Compass/CoffeeScript编译工具

image.png

3、前端自动化工作流

前面两种方法都是单独将scss编译成css。事实上,随着前端工程化的流行,scss的编译工作已融入了工作流之中。如Webpack、Vite、Grunt、Gulp等工作流都有对应的插件配合,轻松的完成工作,不需要我们过多操心。