问题标签 [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 - 在使用 Node 进行 SASS 编译期间注入变量
在我正在工作的应用程序中,我必须在客户端渲染之前动态编译 SASS(缓存系统来了,不用担心)。目前我正在使用node-sass,一切都很好。
这是我目前正在做的事情。为简洁起见,已删除其他特定于项目的代码:
问题是现在我需要从 Node 传递动态数据并像普通的 SASS 变量一样编译。最初我尝试使用PostCSS,因为我注意到变量注入是它可以做的事情。不幸的是,那没有用。PostCSS 在编译阶段之后启动,此时编译阶段失败了。
接下来,我尝试使用下划线模板尝试使用 node-sass' 覆盖importer()
:
这导致了以下错误:
显然 SASS 不喜欢下划线的变量语法..
TL;博士
如何从我的 Node 应用程序中将动态变量传递给 SASS?
附加信息
- 我和我的团队并不完全反对改用Stylus 之类的东西;但是,到目前为止,我们已经取得了重大进展,这将是一种痛苦。
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 机器上运行时,我没有遇到任何这些问题,它只是工作。我不知道我做错了什么,有什么想法吗?
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:
- install libsass?
- use it from command line?
- use it with task runners like gulp and grunt?
I have little experience with package managers and even less so with task runners.
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 之前)。
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。
谢谢!
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 上)。
之后,当我尝试运行gulp-sass
(然后运行node-sass
)编译 SCSS 文件时,出现此错误:
我已经尝试过这里建议的修复,但它们都不起作用,所以这不是一个重复的问题,相反,我相信这与节点升级直接相关。我已经在三台不同的 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 安装 /Users/Jonathan/Documents/sites/wkux/ct-html-lib/node_modules/gulp-sass/node_modules/node-sass
节点脚本/install.js
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 中引起了问题。