我之前使用过LESS.js。它很容易使用,比如
<link rel="stylesheet/less" href="main.less" type="text/css">
<script src="less.js" type="text/javascript"></script>
我看到了SASS.js。我怎样才能以类似的方式使用它?解析SASS文件以便在HTML中立即使用。似乎SASS.js更适用于Node.js?
var sass = require('sass')
sass.render('... string of sass ...')
// => '... string of css ...'
sass.collect('... string of sass ...')
// => { selectors: [...], variables: { ... }, mixins: { ... }}
答案 0 :(得分:41)
没有官方批准的sass或scss的JavaScript实现。我已经看到了一些正在进行中的实现,但目前我还没有建议使用。
但是,请几点:
因此,虽然开始时需要更多设置,但我们(sass核心团队)认为服务器端编译是最好的长期方法。同样,开发人员更喜欢生产样式表的服务器端编译。
答案 1 :(得分:26)
由于visionmeda / sass.js不再可用且scss-js未在2年内更新,我可能会对sass.js感兴趣。它是使用Emscripten编译为JavaScript的C ++库libsass(也由node-sass使用)。可以在sass.link.js找到编译在html中链接或内联的scss样式表的实现。
尝试sass.js答案 2 :(得分:6)
我刚刚发现了一个有趣的Sass.js游乐场。多年来,一些事情可能已经改变。看看这个:
答案 3 :(得分:6)
是强>
正如我们所料,在C++上重写后,可以通过Emscripten在Javascript中编译它。
这是浏览器版本:https://github.com/medialize/sass.js/
正如他们所建议的那样,对于节点,您可以使用此节点:https://github.com/sass/node-sass
答案 4 :(得分:5)
您绝对不应该让所有用户编译样式表,但是javascript实现也可以在服务器上运行。我也在寻找一个javascript sass实现 - 在node.js应用程序中使用。这是sass团队正在考虑的事情吗?
答案 5 :(得分:3)
答案 6 :(得分:1)
虽然没有官方批准的sass的JavaScript实现,但是有一个Sass引擎的官方C / C ++端口,称为LibSass。因为LibSass是一个官方实现,所以最好选择一个使用LibSass的JavaScript库。
对于在Node.js环境中运行的JavaScript,有Node-sass。
在幕后,Node-sass使用LibSass本身。
对于在浏览器中运行的JavaScript,有Sass.js。
在幕后,Sass.js使用了一个版本的LibSass(在我写这篇文章的时候是v3.3.6),它已经用Emscripten转换为JavaScript。