任何人都有一个用于将SASS或其他CSS预处理器集成到Dart编辑器中的固定解决方案?似乎需要一个自定义的build.dart,我宁愿复制而不是代码。感谢。
答案 0 :(得分:4)
我几天前偶然发现了这件事
答案 1 :(得分:2)
这是一个build.dart文件,基本支持SASS:
import 'dart:io';
void main(List<String> args) {
for (String arg in args) {
if (arg.startsWith('--changed=')) {
String file = arg.substring('--changed='.length);
if (file.endsWith('.scss')) {
var result = Process.runSync('sass',
[ '--line-numbers', file,
file.substring(0, file.length - '.scss'.length) + '.css']);
if (result.exitCode != 0) {
// report error (SASS seems to only report first error)
// split error lines
var lines = result.stderr.split('\n');
// escape quotes in error message on first line
var error = lines[0].replaceAll('"', r'\"');
// extract line number from second line
var numMatch = new RegExp(r'\d+').firstMatch(lines[1]);
var lineNum = numMatch == null ? 1 : num.parse(numMatch.group(0));
// Report error via JSON
print('[{"method":"error","params":{"file":"$file","line":$lineNum,"message":"$error"}}]');
}
}
}
}
}
答案 2 :(得分:1)
在开发过程中(使用Dart编辑器或其他编辑器...),只需在目录项目中使用它的方式:
sass -w .
将CSS生成的文件放在源代码管理系统的忽略列表中(也就是git的.gitignore)。
对于dart2js编译,请使用sass pub包:http://pub.dartlang.org/packages/sass