如何从scala.js调用nodejs模块?

我正在尝试使用scala.js + nw.js来编写一些应用程序,并将在scala.js中使用一些节点模块。 但我不知道该怎么做。

说,有模块fs ,我可以用Javascript编写这样的代码:

 var fs = require('fs'); fs.writeFile("/tmp/test", "Hey there!", function(err) { if(err) { console.log(err); } else { console.log("The file was saved!"); } }); 

但是如何在scala.js中从头开始呢?

使用js.Dynamicjs.DynamicImplits (另请参阅关于主题的更长的答案 ),您可以在Scala.js中音译代码:

 import scala.scalajs.js import js.Dynamic.{global => g} import js.DynamicImplicits._ val fs = g.require("fs") fs.writeFile("/tmp/test", "Hey there!", { (err: js.Dynamic) => if (err) console.log(err) else console.log("The file was saved!") }) 

您可以使用Scala.js中的Node.js fs模块find更长的源代码: https : //github.com/scala-js/scala-js/blob/v0.6.0/tools/js/src/main/斯卡拉/组织/ scalajs /核心/工具/ IO / NodeVirtualFiles.scala