如何在Dart编辑器中使用SASS

如何在Dart编辑器中使用SASS,sass,dart,dart-pub,Sass,Dart,Dart Pub,有人有一个可以将SASS或其他CSS预处理器集成到Dart编辑器中的固定解决方案吗?似乎需要一个自定义build.dart,我宁愿复制它,也不愿复制代码。谢谢。我几天前偶然发现了这个 这是一个build.dart文件,它提供了对SASS的基本支持: 导入'dart:io'; void main(列表参数){ for(args中的字符串arg){ if(arg.startsWith('--changed=')){ 字符串文件=arg.substring('--changed='.length);

有人有一个可以将SASS或其他CSS预处理器集成到Dart编辑器中的固定解决方案吗?似乎需要一个自定义build.dart,我宁愿复制它,也不愿复制代码。谢谢。

我几天前偶然发现了这个


这是一个build.dart文件,它提供了对SASS的基本支持:

导入'dart:io';
void main(列表参数){
for(args中的字符串arg){
if(arg.startsWith('--changed=')){
字符串文件=arg.substring('--changed='.length);
if(文件.endsWith('.scss')){
var result=Process.runSync('sass',
['--行号”,文件,
子字符串(0,file.length-'.scss.length)+'.css'];
如果(result.exitCode!=0){
//报告错误(SASS似乎只报告第一个错误)
//分割错误行
var lines=result.stderr.split('\n');
//第一行错误消息中的转义引号
var error=行[0]。replaceAll(“”,r“\”);
//从第二行中提取行号
var numMatch=newregexp(r'\d+')。firstMatch(第[1]行);
var lineNum=numMatch==null?1:num.parse(numMatch.group(0));
//通过JSON报告错误
打印('[{“方法”:“错误”,“参数”:{“文件”:“$file”,“行”:$lineNum,“消息”:“$error”}}]);
}
}
}
}
}
在开发过程中(使用Dart编辑器或其他编辑器…),只需在目录项目中按预期方式使用sass即可:

sass -w .
将CSS生成的文件放在源代码管理系统的忽略列表中(对于git,也称为.gitignore)


对于dart2js编译,请使用sass发布包:

太好了,谢谢。但我认为这不会在Dart编辑器内的本地测试期间自动运行。AFAIR在pubspec.yamlRight中配置为transformer时,它会与pub build一起运行,而pub build不会由编辑器启动自动运行。这是我所知道的最接近您的问题:-以防有人好奇build.Dart的文档。可能只需要更改示例中的几行代码。快速谷歌-来自做过这件事的人。Dart编辑器是一个自动构建和启动Dart程序的Eclipse IDE。问题是如何让它在构建中自动使用SASS。据推测,pub-serve支持刚刚添加到编辑器中,因此这可能很快成为可能。您错过了什么?我使用pub-sass包进行最终构建(使用pub),在本地开发过程中,我不需要让Dart编辑器处理sass,因为在sass-watch有机会重新生成.css文件之前,会运行浏览器上的sass-watch编译文件。这包括在sass-pub包中吗?