任何人都有将 SASS 或其他 CSS 预处理器集成到 Dart 编辑器中的固定解决方案?似乎需要自定义 build.dart,我宁愿复制而不是代码。谢谢。
问问题
1411 次
3 回答
4
几天前我偶然发现了这个
于 2013-12-17T08:08:43.207 回答
2
这是一个基本支持 SASS 的 build.dart 文件:
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"}}]');
}
}
}
}
}
于 2014-02-28T21:52:59.547 回答
1
在开发过程中(使用 Dart 编辑器或其他编辑器...),只需在您的目录项目中使用 sass 应使用的方式:
sass -w .
将 CSS 生成的文件放在源代码管理系统的忽略列表中(也称为 .gitignore for git)。
对于 dart2js 编译,使用 sass pub 包:http ://pub.dartlang.org/packages/sass
于 2014-06-04T17:11:42.360 回答