問題タブ [node-sass]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
css - Injecting variables during SASS compilation with Node
In an application I'm working, I have to dynamically compile SASS before rendering on the client (caching system is coming, don't worry). Currently I'm using node-sass and everything is working great.
Here is what I'm working on so far. Other project-specific code has been removed for brevity:
The wrinkle is that now I need to pass in dynamic data from Node and have that compile like a normal SASS variable. Initially I tried using PostCSS, because I noticed that variable injection was something it could do. Unfortunately, that didn't work. PostCSS kicks in after the compilation phase, which fails miserably by this point.
Next, I tried to use underscore templates to try and overwrite using node-sass' importer()
:
Which resulted in the following error:
Obviously SASS didn't like underscore's variable syntax..
TL;DR
How can I pass dynamic variables to SASS from within my Node application?
Additional Information
- My team and I are not completely adverse to switching to something like Stylus; however, we have made significant progress so far and it would be a pain.
linux - gulp dist の実行時に libsass バインディングが見つからない
Linux マシンで gulp プロジェクトを使用しようとしています。プロジェクトの readme には、最初に を実行しsudo npm install -g gulp bower
、次にプロジェクト ディレクトリで実行し、次に をsudo npm install
実行するように指示されていbower install
ます。この時点までのすべてが私にとってはうまくいきます。ただし、その後、実行しようとするgulp dist
と、次のエラーが発生します。
そのエラーをグーグルで検索すると、 nodejs で node-sass を使用しているときに libsass bindings not found 、試しましたが、何も修正されませんでした。そのディレクトリを調べたところ、gulp が違いを見つけることができなかったと言ったのlinux-x64-14
はlinux-x64-11
. 楽しみのために、そのフォルダーの名前を必要な名前に変更してみることにしましたが、別のエラーが発生しました。
これらすべてについて本当に奇妙なことは、このプロジェクトを自分の Windows マシンで動作させようとしたとき、これらの問題はまったくなく、うまく機能したことです。私は何が間違っているのか分かりません。何かアイデアはありますか?
css - node-sass (Ruby なし) で sass / scss を css にコンパイルまたは変換する方法は?
libsass は Ruby ベースのトランスパイラーほど簡単ではなかったため、セットアップに苦労しました。誰かが方法を説明できますか:
- libsass をインストールしますか?
- コマンドラインから使用しますか?
- gulp や grunt などのタスク ランナーで使用しますか?
私はパッケージ マネージャーの経験がほとんどなく、タスク ランナーの経験はさらに少ないです。
node.js - Node-sass は Slow バッファを返します。これは何ですか? CSS に変換するにはどうすればよいですか?
node.js を使用して静的サイトをコンパイルしています。sassをコンパイルしたい。を要求node-sass
して電話しました: a.renderSync({data:"body{h1{color:green}}"}).css
。これが返ってき<SlowBuffer 62 6f 64 79 20 68 31 20 7b 0a 20 20 63 6f 6c 6f 72 3a 20 67 72 65 65 6e 3b 20 7d 0a>
ました。スローバッファとは?CSSが欲しいだけです。
ありがとう!
sass - Sass `map-get()` が存在しないキーに対してエラーを返さないのはなぜですか?
map-get()
提供されたマップにキーが存在しない場合にエラーをスローしないのはなぜですか?
例えば:
map-has-key()
それだけでも役立つことは承知していますが、スムーズに使いたいのであれば、毎回map-get()
呼び出す必要はありません。map-has-key()
がエラーをスローすることを期待しmap-get()
ていますが、代わりにサイレントに失敗します。これがSassに組み込まれていないのはなぜですか?
問題があれば、node-sass 3.2.0 を使用しています。
sass - webpack sass-loader が scss メソッドを認識しない
sass-loader が scss 組み込みメソッドをコンパイルしない - selector-parse [ http://sass-lang.com/documentation/Sass/Script/Functions.html#selector_parse-instance_method]
何か案は?node-sass はこれらの組み込みの scss メソッドをサポートしていますか? どのローダーを使用すればよいですか? grunt-contrib-sass のような sass コマンドラインに基づく webpack ローダーはありますか?
node.js - ノードを 4.0.0 にアップグレードすると node-sass エラーがスローされる
私はイオンアプリを開発しており、sassを使用しています。ノードのバージョンを 4.0.0 にアップグレードすると、node-sass に関するエラーがスローされます。エラーはブローです:
すべての node_modules を再インストール (node_modules フォルダーを削除してノードのインストールを再実行) しようとしましnode rebuild node-sass
たが、まだ機能しません。
ノードのバージョンを 0.12.7 にダウングレードし、すべての node_modules を再インストールすると、問題が解決しました。
したがって、node 4.0 で node-sass をコンパイルするときに何か問題があると思います。
誰でもこれを修正する方法を知っていますか?
node.js - ノード 4 のアップグレード後に「libsass」バインディングが見つからない
nodejs をバージョン 0.12.7 から 4.0.0 (Windows 10) にアップグレードしました。
その後、SCSS ファイルをコンパイルするために実行しようとするとgulp-sass
(次に が実行されます)、次のエラーが発生します。node-sass
ここで提案されている修正を試しましたが、どれも機能しないため、これは重複した質問ではなく、ノードのアップグレードに直接関係していると思います。この動作を 3 つの異なる Windows (7 および 10) マシンで再現しました。
node.js - Node v4.0.0 への更新後に gulp-sass を実行するとエラーが発生する
Node v4.0.0 に更新した後、プロジェクトで gulp を実行すると、次のように gulp-sass/node-sass に関するエラーが発生します。
エラー:
libsass
バインディングが見つかりません。再インストールしてみてnode-sass
は?
プロジェクト内のすべてのノード モジュールを破棄して再インストールしようとしましたが、いくつかのエラーが発生します。
npm WARN package.json package@0.0.0 リポジトリ フィールドがありません。
npm WARN package.json package@0.0.0 ライセンス フィールドがありません。
npm WARN は CSSselect@0.4.1 を非推奨にしました: モジュールは 'css-select' として利用できるようになりました
npm WARN は CSSwhat@0.4.7 を廃止しました: モジュールは「css-what」として利用できるようになりました
npm WARN 非推奨の pangyp@2.3.2: node-gyp@3+ を使用してください。
-
node-sass@2.1.1 install /Users/Jonathan/Documents/sites/wkux/ct-html-lib/node_modules/gulp-sass/node_modules/node-sass
ノードスクリプト/install.js
https://raw.githubusercontent.com/sass/node-sass-binaries/v2.1.1/darwin-x64-node-4.0/binding.nodeからファイルをダウンロードできません
node-sass@2.1.1 postinstall /Users/Jonathan/Documents/sites/wkux/ct-html-lib/node_modules/gulp-sass/node_modules/node-sass
ノードスクリプト/build.js
gyp: /Users/Jonathan/.node-gyp/4.0.0/common.gypi が見つかりません (cwd: /Users/Jonathan/Documents/sites/wkux/ct-html-lib/node_modules/gulp-sass/node_modules/node -sass) binding.gyp の読み込み中に binding.gyp のインクルードを読み込んでいる間
ジプエラー!構成エラー
ジプエラー!スタック エラー:
gyp
終了コードで失敗しました: 1ジプエラー!ChildProcess.onCpExit のスタック (/Users/Jonathan/Documents/sites/wkux/ct-html-lib/node_modules/gulp-sass/node_modules/node-sass/node_modules/pangyp/lib/configure.js:346:16)
ジプエラー!emitTwo でのスタック (events.js:87:13)
ジプエラー!ChildProcess.emit のスタック (events.js:172:7)
ジプエラー!Process.ChildProcess._handle.onexit のスタック (internal/child_process.js:200:12)
ジプエラー!システム ダーウィン 14.5.0
ジプエラー!コマンド "/usr/local/bin/node" "/Users/Jonathan/Documents/sites/wkux/ct-html-lib/node_modules/gulp-sass/node_modules/node-sass/node_modules/pangyp/bin/node-gyp 「再構築」
ジプエラー!cwd /Users/Jonathan/Documents/sites/wkux/ct-html-lib/node_modules/gulp-sass/node_modules/node-sass
ジプエラー!ノード -v v4.0.0
ジプエラー!pangyp -v v2.3.2
ジプエラー!良くないですよ
ビルドに失敗しました
他のノード モジュールはすべて正常にインストールされているようです。問題を引き起こしているのは、gulp-sass にある node-sass を使用したものです。