web-dev-qa-db-ja.com

SASS.jsはありますか? LESS.jsのようなものですか?

以前に LESS.js を使用しました。次のような使いやすいです

<link rel="stylesheet/less" href="main.less" type="text/css">
<script src="less.js" type="text/javascript"></script>

SASS.js を見ました。同様に使用するにはどうすればよいですか? HTMLですぐに使用するためにSASSファイルを解析します。 SASS.jsは Node.js

var sass = require('sass')
sass.render('... string of sass ...')
// => '... string of css ...'

sass.collect('... string of sass ...')
// => { selectors: [...], variables: { ... }, mixins: { ... }}
110
Jiew Meng

Sassまたはscssの公式に認可されたJavaScript実装はありません。いくつかの実装が進行中ですが、現時点で推奨される実装はありません。

ただし、いくつかの点をお願いします。

  1. すべてのユーザーに対して一度だけ実行できるのに、すべてのユーザーにスタイルシートをコンパイルさせる必要があるのはなぜですか。
  2. JavaScriptが無効になっている場合、サイトはどのように表示されますか。
  3. 将来サーバー側の実装に変更する場合は、それに応じてすべてのテンプレートを変更する必要があります。

そのため、開始するにはもう少しセットアップが必要ですが、私たち(sassコアチーム)は、サーバー側のコンパイルが最良の長期的アプローチであると考えています。同様に、開発者が少ないと、プロダクションスタイルシートにサーバー側のコンパイルを好むようになります。

41
chriseppstein

Visionmeda/sass.jsはもう利用できず、scss-jsは2年間更新されていないので、 sass.js に興味があるかもしれません。 Emscriptenを使用してJavaScriptにコンパイルされたC++ライブラリ libsassnode-sass でも使用)です。 HTMLでリンクまたはインライン化されたscssスタイルシートをコンパイルする実装は、 sass.link.js にあります。

インタラクティブな遊び場 を使用してsass.jsを試してください

29
rodneyrehm

[〜#〜] yes [〜#〜]

予想どおり、 C++ で書き換えた後、 Emscripten を使用してJavascriptでコンパイルできます。

これはブラウザのバージョンです: https://github.com/medialize/sass.js/

彼らが推奨するように、ノードにはこれを使用できます: https://github.com/sass/node-sass

7
nikoloza

興味深いSass.js Playgroundを発見しました。長年にわたっていくつかのことが変わった可能性があります。これをチェックしてください:

http://medialize.github.io/playground.sass.js/

6
Chong Lip Phang

すべてのユーザーにスタイルシートをコンパイルさせるべきではありませんが、javascript実装はサーバー上でも実行できます。 node.jsアプリで使用するjavascript sassの実装も探しています。これは、sassチームが検討しているものですか?

5
tilleryj

GitHubscss-js で試みがあります。ただし、これは不完全であり、5か月以内にコミットされていません。

3
Peter Lyons

なぜLibSass

正式に認可されたsassのJavaScript実装はありませんが、 LibSass として知られるSassエンジンの公式C/C++ポートがあります。 LibSassは公式の実装であるため、内部でLibSassを使用するJavaScriptライブラリを選択するのが最善です。


サーバー上

Node.js環境で実行されるJavaScriptには、 Node-sass があります。

内部では、Node-sassはLibSass自体を使用します。


ブラウザで

ブラウザで実行されるJavaScriptの場合、 Sass.js があります。

内部では、Sass.jsは Emscripten でJavaScriptに変換されたLibSassのバージョン(これを書いている時点ではv3.3.6)を使用しています。 。

1
John Slegers