Javascript 如何使用Node.js读取jQuery的HTML文件

Javascript 如何使用Node.js读取jQuery的HTML文件,javascript,jquery,html,node.js,nwjs,Javascript,Jquery,Html,Node.js,Nwjs,我正在使用web技术和“客户端”node.js创建一个桌面应用程序。通过使用NWJS,我可以“客户端”加载节点模块 我想使用节点的fs.readFile之类的东西来加载客户端的.html文件,然后将其转换为jQuery对象,例如,我可以将其附加到某个地方 我知道jQuery有自己的.load()-方法,但我想使用node.js来加载文件 编辑:根据rsp的回答,它现在正在工作 工作代码: fs.readFile('./views/main.html', function (err, html)

我正在使用web技术和“客户端”node.js创建一个桌面应用程序。通过使用NWJS,我可以“客户端”加载节点模块

我想使用节点的
fs.readFile
之类的东西来加载客户端的.html文件,然后将其转换为jQuery对象,例如,我可以将其附加到某个地方

我知道jQuery有自己的
.load()
-方法,但我想使用node.js来加载文件

编辑:根据rsp的回答,它现在正在工作

工作代码:

fs.readFile('./views/main.html', function (err, html) 
{
    if (err) 
    {
        throw err; 
    }     

    $('#toolview').empty().append($(html.toString()));
});

如果您可以在相同的上下文中使用
fs.readFile
jQuery
,那么您可以读取文件并使用jQuery对其进行如下解析:

fs.readFile('/path/to/file', function (err, html) {
  if (err) {
    // handle error
  } else {
    var $html = $(html.toString());
    // now $html is a jQuery object
  }
});
这与使用jQuery执行
$(“abc

”)
几乎相同。您可以将HTML字符串传递给jQuery函数,它将返回jQuery对象。这里唯一的区别是字符串来自文件

默认情况下,从
readFile
获得的不是字符串,而是字符串。它是在ES6中出现TypedArray之前添加的,能够以良好的性能处理文件和二进制数据流

要将缓冲区转换为字符串,可以使用可选的方法进行编码(默认为UTF-8),转换缓冲区的开始和结束(默认为整个缓冲区)

有关更多信息,请参阅:


你有帮助吗?有什么意见吗?对不起,我还没有时间尝试一下。我很快就回来报到。但这看起来很有希望。我对readfile有点困惑,因为当我只是在console.log中记录html时,它给了我一个巨大的不敏感的“流数组”,但是.toString可能是关键!是的,你的答案和预期的一样!如果您有时间,可以解释一下为什么我可以对filestream(?)的结果调用toString(),以及它是如何工作的吗?