使用Node.sass和Node.js将scss编译为CSS

时间:2019-03-30 20:56:04

标签: node.js npm node-sass

我正在尝试使用node-sass将我的scss文件编译成css文件,我已经知道如何使用命令行来做到这一点。 我的npm-script文件中有这个package.json

"scripts": {
"scss": "node-sass --watch fileName/scss -o FileName/css"
}

当我运行时:

npm run scss

它工作正常。 我想知道如何使用(从node-sass项目页面):

var sass = require('node-sass');

sass.render({
  file: scss_filename,
  [, options..]
}, function(err, result) { /*...*/ });

我在我的app.js中尝试了此操作:

var sass = require('node-sass');

sass.render({
  file: __dirname + '/scss/style.scss',
  outFile: __dirname + '/css/style.css',
}); 

但是它不起作用,对此我经验很少,我可以使用一些帮助。

1 个答案:

答案 0 :(得分:0)

与您链接的文档相同

sass.render({
    ...
    outFile: yourPathTotheFile,
  }, function(error, result) { // node-style callback from v3.0.0 onwards
    if(!error){
      // No errors during the compilation, write this result on the disk
      fs.writeFile(yourPathTotheFile, result.css, function(err){
        if(!err){
          //file written on disk
        }
      });
    }
  });
});

sass.render()不会写入文件,它只会将result传递给回调。如上例所示,您需要使用fs自己编写。