3

我正在 NW.js (node-webkit) 中开发一个多平台项目,它必须使用 node-sass。问题是我似乎无法找到任何方法将它包含在 Windows (x64) 上而不会出现错误。

这是我尝试过的:

  1. 要求原样
    错误:动态链接库 (DLL) 初始化例程失败。
  2. 使用 node-sass 的内置脚本构建,然后需要
    错误:动态链接库 (DLL) 初始化例程失败。
  3. 使用 node-gyp 构建
    错误:动态链接库 (DLL) 初始化例程失败。
  4. 使用 nw-gyp 构建(配置命令失败)
    错误:在尝试加载 binding.gyp 时在 binding.gyp 中评估条件 'OS=="win" 和 component=="shared_library" 时未定义名称'component'

我已经在 Windows 10 (x64)、node v6.5.0、NW.js v0.16.1 和 v0.17.0、node-sass(最新)上对此进行了测试。

谢谢你的帮助!

4

2 回答 2

0

我遇到了类似的问题(但在 linux 上)并且找不到任何答案,为什么 node-sass 不起作用以及如何解决它。但是sass.js对我有用(worker+script)。当然它不像 node-sass 那样方便(即你需要以特殊的方式处理导入),但对于我的需要它可以正常工作。

于 2016-09-25T13:52:14.680 回答
0

我最终做的是:

我围绕 node-sass 创建了一个包装器,它将 node-sass 称为子进程(通过 cli)。

const { exec } = require('child_process');
module.exports = function (options, cb) {
    // turn the options to node-sass cli args
    // something like this...
    exec(`node-sass ${agrs}`, execOptions, cb);
}

奇迹般有效!;)

于 2018-04-20T09:17:44.127 回答