将async / await回调传递给sass(C ++)会随机崩溃

时间:2017-09-08 12:47:04

标签: javascript node.js sass async-await

我在Node.js 8.4.0上调试<!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <script> $(document).ready(function(){ var myvariable = 'Some Content'; $(".myclass").append(myvariable); }); </script> </head> <body> <div class="col-md-12 myclass">Appen on Me...</div> </body> </html> 代码。版本#1按预期工作,打印“OK”,但版本#2随机崩溃(至少每10次运行一次),但错误如

async/await

libc++abi.dylib: Pure virtual function called!
Abort trap: 6

这是我的代码:

Segmentation fault: 11

我的问题:这是一个Node.js错误吗? Sass bug?或者我做错了什么?

环境:macOs上的Node.js 8.4 Sierra,node-sass 4.5.3。

1 个答案:

答案 0 :(得分:2)

您确定node-sass期望importer方法返回承诺吗?因为那是async函数的作用。基于node-sass docs,似乎lib仅适用于importer的回调或同步实现。您的实现立即返回promise,并且lib认为它是从同步版本返回并尝试继续使用promise本身(而不是其解析的值)。