我需要在一些EJS代码中使用Javascript变量(在前端定义),如下所示:
var selected = 1;
<% for (var i=0; i < supplies.length; i++) { %>
if (i == selected) {
console.log(supplies);
}
<% } %>
Run Code Online (Sandbox Code Playgroud)
我正在使用EJS,Express.js和socket.io.我可以通过向我的Node.js服务器实例发送消息将Javascript变量转换为EJS变量,但这有点傻......有没有办法在EJS中使用Javascript变量?
编辑:我想在用户从下拉菜单中选择一个项目后访问耗材,一个javascript数组.当他选择这个项目时,带有上述代码的javascript函数需要访问一些EJS.这就是我需要在EJS中使用普通Javascript变量的原因.
我正在使用PhantomJS节点模块(https://github.com/sgentle/phantomjs-node)抓取Facebook页面,但是当我尝试评估页面时,它不会评估我传递给它的函数.在独立脚本中执行它并使用Node解释器运行它.. Express.js应用程序中的相同代码不起作用.
这是我的代码
facebookScraper.prototype.scrapeFeed = function (url, cb) {
f = ':scrapeFeed:';
var evaluator = function (s) {
var posts = [];
for (var i = 0; i < FEED_ITEMS; i++) {
log.info(__filename+f+' iterating step ' + i);
log.info(__filename+f+util.inspect(document, false, null));
}
return {
news: posts
};
}
phantom.create(function (ph) {
ph.createPage(function (page) {
log.fine(__filename+f+' opening url ' + url);
page.open(url, function (status) {
log.fine(__filename+f+' opened site? ' + status);
setTimeout(function() {
page.evaluate(evaluator, function (result) {
log.info(__filename+f+'Scraped feed: …Run Code Online (Sandbox Code Playgroud) 我正在写一个消息应用程序.我的服务器构建在node.JS和socket.io上.我的客户端应该是Android应用程序.但是,我似乎找不到一个像Socket.IO那样的Java接口(通过websockets方式?).是否存在一些库?或者我是否必须依赖另一种解决方案(哪一个?)?
我找到了这个可可的库:https://github.com/fpotter/socketio-cocoa.Android的替代方案?
谢谢!