在我的应用程序中,我需要提供一个API(类似于Google Maps JavaScript API),通过该API,我可以发送一些自定义JavaScript代码(包含一些会话和请求相关的信息)作为响应。然后使用这些JavaScript代码在UI上绘制一些图表。我正在使用Express和Jade作为模板引擎。我目前正在使用的代码是:
app.use('/graph',function(req, res){
//send out graph data
var var_name = req.session.var_name //fetch something from session
var graphData = fetchGraphData(req.query.graph); //function that fetches graph data
res.contentType("text/javascript");
res.render(__dirname + '/views/graph.jade', {
title: "Title", queryStr: JSON.stringify({var_name: var_name, graphData: graphData })
});
});
并且jade文件:
| some_var_name = {
| initGraph : function(divId){
| //some code here
| var graphData = !{graphData}
| // do something
作为解决方法,我已经在jade文件的每一行前面添加了|
,这样jade会将文本解析为普通文本,并不会添加任何html标签!它能正常工作,但是否有更简洁的方法呢?解决方案可以使用Jade,也可以不用!
res.send
发送任何字符串。 - TheHippo