Javascript 如何将视图加载到变量中?

Javascript 如何将视图加载到变量中?,javascript,view,node.js,express,Javascript,View,Node.js,Express,我需要使用WebSocket发送视图,以便可以在选项卡中加载它。但我似乎不知道如何将视图加载到变量中进行发送。似乎加载视图的唯一方法是调用response.render()函数 有什么想法吗?大多数模板引擎都可以将模板呈现为内存中的字符串,然后您可以通过web套接字将其作为原始数据发送。下面是一个例子 如果您特别提到您使用的模板引擎,我们可以根据需要给出具体的示例 这是: 大多数模板引擎可以将模板呈现为内存中的字符串,然后您可以将其作为原始数据通过web套接字发送。下面是一个例子 如果您特别提到

我需要使用WebSocket发送视图,以便可以在选项卡中加载它。但我似乎不知道如何将视图加载到变量中进行发送。似乎加载视图的唯一方法是调用
response.render()
函数


有什么想法吗?

大多数模板引擎都可以将模板呈现为内存中的字符串,然后您可以通过web套接字将其作为原始数据发送。下面是一个例子

如果您特别提到您使用的模板引擎,我们可以根据需要给出具体的示例

这是:


大多数模板引擎可以将模板呈现为内存中的字符串,然后您可以将其作为原始数据通过web套接字发送。下面是一个例子

如果您特别提到您使用的模板引擎,我们可以根据需要给出具体的示例

这是:


虽然Peter的解决方案适用于Jade,但我使用的是EJS。而EJS没有renderFile函数。下面是一种读取纯HTML文件的通用方法:

s.readFile(__dirname + '/views/tabs/' + data.tab + '/index.ejs', 'utf8', function( err, html )
{
    socket.emit( 'setTabHTML', { tab: data.tab, 'html': html });
});

虽然Peter的解决方案适用于Jade,但我使用的是EJS。而EJS没有renderFile函数。下面是一种读取纯HTML文件的通用方法:

s.readFile(__dirname + '/views/tabs/' + data.tab + '/index.ejs', 'utf8', function( err, html )
{
    socket.emit( 'setTabHTML', { tab: data.tab, 'html': html });
});

使用ejs,ejs中是否有类似的renderFile方法?用一些ejs细节更新了我的答案。(可能有不止一个名为EJS的项目…)使用EJS,EJS中是否有类似的renderFile方法?用一些EJS细节更新了我的答案。(可能有一个以上的项目称为EJS…)
s.readFile(__dirname + '/views/tabs/' + data.tab + '/index.ejs', 'utf8', function( err, html )
{
    socket.emit( 'setTabHTML', { tab: data.tab, 'html': html });
});