问题标签 [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.

0 投票
3 回答
17718 浏览

css - 在使用 Node 进行 SASS 编译期间注入变量

在我正在工作的应用程序中,我必须在客户端渲染之前动态编译 SASS(缓存系统来了,不用担心)。目前我正在使用node-sass,一切都很好。

这是我目前正在做的事情。为简洁起见,已删除其他特定于项目的代码:

问题是现在我需要从 Node 传递动态数据并像普通的 SASS 变量一样编译。最初我尝试使用PostCSS,因为我注意到变量注入是它可以做的事情。不幸的是,那没有用。PostCSS 在编译阶段之后启动,此时编译阶段失败了。

接下来,我尝试使用下划线模板尝试使用 node-sass' 覆盖importer()

这导致了以下错误:

显然 SASS 不喜欢下划线的变量语法..


TL;博士

如何从我的 Node 应用程序中将动态变量传递给 SASS?


附加信息

  1. 我和我的团队并不完全反对改用Stylus 之类的东西;但是,到目前为止,我们已经取得了重大进展,这将是一种痛苦。
0 投票
3 回答
516 浏览

linux - 运行 gulp dist 时找不到 libsass 绑定

我正在尝试在我的 Linux 机器上使用 gulp 项目。该项目的自述文件告诉我首先运行sudo npm install -g gulp bower,然后在项目目录中运行sudo npm install,然后bower install。到目前为止,一切对我来说都很好。但是,之后我尝试运行gulp dist并收到此错误:

谷歌搜索该错误产生了这个:libsass bindings not found when using node-sass in nodejs,我试过了,但这并没有解决任何问题。当我浏览那个目录时,gulp 说它找不到区别是linux-x64-14,我的说linux-x64-11,所以我假设我有错误的版本?只是为了好玩,我决定尝试将该文件夹的名称更改为它想要的名称,但我得到了一个不同的错误:

关于这一切的真正奇怪的事情是,当我尝试让这个项目在我的 Windows 机器上运行时,我没有遇到任何这些问题,它只是工作。我不知道我做错了什么,有什么想法吗?

0 投票
4 回答
141608 浏览

css - How to compile or convert sass / scss to css with node-sass (no Ruby)?

I was struggling with setting up libsass as it wasn't as straight-forward as the Ruby based transpiler. Could someone explain how to:

  1. install libsass?
  2. use it from command line?
  3. use it with task runners like gulp and grunt?

I have little experience with package managers and even less so with task runners.

0 投票
0 回答
1039 浏览

node.js - 尝试安装 grunt-sass 时“node build.js”失败

我正在尝试从 grunt-contrib-sass 切换到 grunt-sass,但是在 grunt 包装器模块中遇到了与 node-sass 相关的构建错误。到目前为止,我已经将节点从 0.10.40 升级到 0.12.7 并切换到 Python 2.7 以绕过其他一些,但这就是剩下的:

附加版本信息:

我在解决 Node.js 兼容性问题方面有点不够深入。虽然这是在共享的开发环境中,但我愿意尝试任何没有大规模全球变化的事情,比如升级操作系统。

更新:我已经通过从本地 node_modules 文件夹中手动删除 node-sass 和 node-gyp 解决了这个问题。之后运行 npm install 运行没有错误。我认为这些模块是早期尝试遗留下来的(很可能是在升级 node.js 和 Python 之前)。

0 投票
1 回答
574 浏览

node.js - Node-sass 返回一个慢速缓冲区。这是什么以及如何将其转换为 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。

谢谢!

0 投票
1 回答
6548 浏览

sass - 为什么 Sass `map-get()` 不为不存在的键返回错误?

map-get()当提供的地图中不存在密钥时,为什么不抛出错误?

例如:

我知道map-has-key()并且我理解它本身可能有用,但如果我想map-get()顺利使用,我不应该map-has-key()每次都打电话。我希望map-get()抛出一个错误,但它会默默地失败。为什么这没有内置到 Sass 中?

如果重要的话,我使用的是 node-sass 3.2.0。

0 投票
1 回答
792 浏览

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 加载器?

0 投票
1 回答
2686 浏览

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时有问题。

有人知道怎么修这个东西吗?

0 投票
1 回答
742 浏览

node.js - 升级节点 4 后未找到“libsass”绑定

我刚刚将 nodejs 从版本 0.12.7 升级到 4.0.0(在 Windows 10 上)。

之后,当我尝试运行gulp-sass(然后运行node-sass)编译 SCSS 文件时,出现此错误:

我已经尝试过这里建议的修复,但它们都不起作用,所以这不是一个重复的问题,相反,我相信这与节点升级直接相关。我已经在三台不同的 Windows(7 和 10)机器上重现了这种行为。

0 投票
1 回答
4756 浏览

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 安装 /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 安装后 /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

吉普错误!不好

构建失败

所有其他节点模块似乎都安装得很好。它与 node-sass 的东西在 gulp-sass 中引起了问题。