如何在Visual Studio 2013中使用Sass CSS预处理器?是否有任何扩展可为Sass提供支持?
如何在Visual Studio 2013中使用Sass CSS预处理器?是否有任何扩展可为Sass提供支持?
Answers:
Visual Studio 2013 Update 2对SCSS和LESS文件均具有本机语法支持。您可以创建SCSS或LESS文件,并查看这些文件类型的语法突出显示和智能提示。 但是,它不提供编译方法。
这是博客的链接,其中介绍了新功能:
我们在VS2013 RTM中添加了LESS,现在我们有了一个SASS项目项和编辑器。SASS编辑器功能可与LESS编辑器媲美,包括着色,变量和Mixins智能感知,注释/取消注释,快速信息,格式,语法验证,概述,转到定义,颜色选择器,工具选项设置等。
请注意: 此更新似乎仅支持较新的SassyCSS语法。我尝试使其与较早的缩进SASS语法一起使用没有任何成功。
不幸的是,对于那些转向Visual Studio 2015的人来说,仍然没有对SASS和LESS编译的本机支持。不幸的是,Web Essentials也将不再支持编译。网络基础(克里斯滕森的Mads)的作者解释作出这一决定的原因在这里。
这是可以处理编译的扩展列表:
WebCompiler(免费)
Mads Kristensen(Web Essentials的作者)创建了一个名为Web Compiler的独立编译工具。您所要做的就是安装它,然后右键单击要编译的任何SASS文件,然后选择“ Web编译器”>“编译文件”。从那时起,将对其进行监视并随时对其进行保存,将对文件进行编译。
CompassSASS(免费)
与Web编译器类似,这是一个独立的扩展,它被创建为可在VS2013和VS2015中使用,因为从流行的Web Essentials扩展中删除了编译。它是轻量级的,并且通过出色的错误报告可以很好地完成工作。在此处阅读有关扩展的作者博客。
Web工作台(免费/付费)
多年来,在编译SASS时,Mindscape的Web Workbench是我最喜欢的扩展,但是从那以后,我就不再使用免费的替代程序了。Pro版本仍然是一个功能强大的工具,可以通过多种方式来自定义输出文件,但考虑到那里提供免费工具,它也相当昂贵(39美元)。
确实与上述相同,它通过语法高亮和Intellisense对SASS和LESS具有本机支持,但缺少编译功能。
上面列出的所有编译器都可以使用,但是如果您要手动设置编译,则可以参考以下指南:
对于寻求此问题答案的其他任何人,我发布此邮件是为了节省您的时间,因为某些答案有些过时了。
在Visual Studio 2013中处理一个小型Web项目时,我想第一次使用SASS。我进行了一些挖掘,发现VS 2013 Update 2发行时具有对SASS(.scss
)文件的本机支持。
经过更多的挖掘,并且没有使用SASS的经验,我安装了Web Essentials 2013 for Update 2,该版本用于编译和生成相应的.css
文件。
即便如此,我仍然不清楚如何将它们捆绑在一起,但是这篇博客文章在首次解释所有内容方面做得很好。
博客中的摘录(贷方为@akatakritos)
.scss
).scss
向您的项目添加一个新文件,例如styles.scss
styles.scss
,保存,它将自动styles.css
在该.scss
文件下生成一个文件.css
文件一样捆绑或链接它在更高版本的Web Essentials中,即:2014年11月12日更新的版本2.5,已删除了SASS编译器。
备用编译器:
我没有使用Chripy,但您也可以尝试其他几种选择。
最后一个选择和我经常使用的选择只是使用外部工具监视我的SASS文件,在后台编译它们,然后让Visual Studio在编译CSS文件时重新加载它们。
通过命令行安装Ruby和SASS,并告诉它监视项目目录中的更改可以很好地工作-但我很喜欢Prepros这种事情。
我还没有尝试全部,但Scout,Koala,LiveReload,Compass.app和Fire.app也是类似的选项。
尽管这些并非总是适用于每个项目的正确解决方案,但它们为您提供了很多灵活性和成熟度,而您在Visual Studio扩展中不一定会找到这些灵活性和成熟度。
希望对您有所帮助!
要在Visual Studio中编译SCSS,请安装CompileSass Visual Studio Extension。
不幸的是,Web Essentials不再支持编译Sass。
我认为这很可悲,因为它绝对是从Visual Studio编译Sass的最简单方法。我创建了一个行为相同的新Visual Studio扩展。您只需安装扩展名,保存时它将自动将.scss文件编译为压缩的.min.css文件。
对于ASP.NET,有两种与SASS集成的方法。Chripy是一个常见的插件,您希望将其安装在Visual Studio中作为扩展。
从而进行设计时编译,您可以在http://chirpy.codeplex.com/中找到有关chripy的更多信息,
以及可以通过Nuget安装的另一个软件包:
install-package SassAndCoffee
Chripy
Supprot VS2013不是吗?
我写了一篇有关该主题的博客文章,我认为这可能会对其他人有所帮助。基本上支持SCSS,但不支持SASS扩展。
也要小心,因为我在编译Compass时遇到了一些问题,例如指南针/ css3 / images文件中存在中断错误。
我认为Web Essentials扩展-我假设每个Web开发人员都在运行,并且是本地VS IDE支持的先驱-具有SCSS编译支持,但我认为它仅适用于VS2013 Update 2,该版本仍处于CTP中这次。
最新版本的Visual Studio +最新版本的Web Essentials http://vswebessentials.com/download允许立即使用Sass和Less。
如果有MVC 6
,可以使用gulp
。原始来源:http :
//developer.telerik.com/featured/css-preprocessing-with-visual-studio/
在添加NPM
依赖package.json
:
{
"name": "ASP.NET",
"version": "0.0.0",
"devDependencies": {
"gulp": "3.8.11",
...
"gulp-sass": "2.2.0",
},
"dependencies": {
"gulp-sass": "^2.2.0"
}
}
然后在gulpfile.js
:
var gulp = require("gulp"),
...
sass = require("gulp-sass");
paths.js = paths.webroot + "js/**/*.js";
...
paths.sass = paths.webroot + "css/**/*.scss";
paths.cssOutput = paths.webroot + "css";
gulp.task('sass', function () {
gulp.src(paths.sass)
.pipe(sass().on('error', sass.logError))
.pipe(gulp.dest(paths.cssOutput));
});
最后,在Task Runner Explorer
,right-click
你的新任务sass
,然后Bindings
再选择After Build
在Visual Studio 2013 SP 4中,添加SCSS文件并在每次保存时进行同步都没有问题。同步失败时,我感到困惑,我发现问题出在定义变量之前。SCSS文件未显示任何错误,但同步失败。
这适用于同步:
$body-main: 45px;
body {
padding-top: $body-main + 25px;
padding-bottom: $body-main - 5px;
}
这不适用于同步
body {
padding-top: $body-main + 25px;
padding-bottom: $body-main - 5px;
}
$body-main: 45px;
在第二种情况下,没有错误和智能感知,但是同步失败。