Tag: ejs

Node.js:SyntaxError:意想不到的标记:编译ejs时

我正在尝试使用Node.JS应用filter到EJS,我得到下面的错误。 我希望消息内容以大写显示。 D:\Apps\Templating\ejs>node server.js D:\Apps\node_modules\ejs\lib\ejs.js:470 throw e; ^ SyntaxError: Unexpected token : while compiling ejs at Function (native) at Object.Template.compile (D:\Apps\node_m odules\ejs\lib\ejs.js:460:12) at Object.compile (D:\Apps\node_modules\ej s\lib\ejs.js:288:16) at handleCache (D:\Apps\node_modules\ejs\l ib\ejs.js:147:16) at Object.exports.render (D:\Apps\node_mod ules\ejs\lib\ejs.js:315:10) at Object.<anonymous> (D:\Apps\Templating\ ejs\server.js:3:17) at Module._compile (module.js:460:26) at Object.Module._extensions..js (module.js:478:10) at Module.load (module.js:355:32) at Function.Module._load (module.js:310:12) 这是我的代码server.js: var ejs = require('ejs'); […]

如何在快递js中包含静态文件

我正在使用快速js框架与节点js和我的server.js文件中,我已经使用 app.use('/api',router); 在我的ejs文件中,当我使用脚本标记 <script src = main.js> 我得到一个错误“无法得到http:// localhost:3000 / api / main.js ”我怎么能包括这些文件在ejs 请帮忙!!!

Angularjs从express.js的“public”文件夹的“views”文件夹中路由ejs静态文件

这是我的项目结构。 我试图从“public”文件夹中的angular度路由文件(app> public> main.js)中的“views”文件夹中调用ejs文件(app> views> list.ejs)。 但list.ejs不加载。 /************main.js****************/ var fsApp=angular.module('chart-app'); fsApp.config(function($routeProvider) { $routeProvider .when('/', { templateUrl: 'list.ejs', controller: 'listCtrl' }) /*In my server.js server file I am calling the files in public folder this way: */ app.use('/static',express.static(__dirname + '/public')); app.get('/',function(req,res){ res.render('index.ejs'); }); <!–In index.ejs (where my <ng-view></ng-view> is) I am including the link for static […]

如何获得app.post中的后参数

我正在开发nodejs项目。 在express-helpers模块的帮助下,我使用ejs来生成视图模板html。 在server.js文件中我写下面的代码 var http = require('http'); var path = require('path'); var async = require('async'); var socketio = require('socket.io'); var express = require('express'); var app = express(); var helpers = require('express-helpers') helpers(app); var server = http.Server(app); server.listen(process.env.PORT || 3000, process.env.IP || "0.0.0.0", function(){ var addr = server.address(); console.log("Chat server listening at", addr.address + ":" + […]

从express3.x意见转储ejs模板中的对象?

我使用ejs模板与node.js和expression3.x …是否有可能转储数据对象传递到视图? 在index.ejs中是这样的: <%= dump(session) %>

如何在静态JavaScript中embeddedEJS代码?

我正在使用Nodejs和ExpressJS。 我有一个HTML页面,其中有一个JavaScript文件被引用。 <script type="text/javascript" src="../javascripts/game.js"></script> 我没有将所有的JavascriptembeddedHTML页面本身,因为它太大了。 现在我需要我的Javascript(game.js)来访问控制器传递的一些variables。 我想要做这样的事情 – var max_players = parseInt("<%= table.total_players %>"); console.log("<%= table.name %>") 我正在渲染页面时传递表variables。 exports.index = function(req,res){ //code res.render('mytable', {table: table }); }; 但是,这显然不工作,因为JS文件被呈现为一个静态文件。 如果我需要使这些variables可以被Javascript访问,我该如何去做? 我从某个地方读到,可以通过将Game.js重命名为Game.ejs来实现。 但是我在哪里把Game.js文件(以便它的呈现正确和dynamic?) 如果还有其他方法可以达到这个目的,请告诉我。

如何从控制器/ EJS访问应用程序? Express.js

我想从我的控制器或EJS视图访问app.routes,但应用程序var不存在。 你知道我怎样才能访问我在config / routes.js中定义的所有路由? 谢谢。 PS:我使用基于express.js的sails.js。

JSON.stringified()对象中的文本编码问题

我有一个index.html发送文本到PHP代码。 这个PHP通过POST(curl)把它重新发送到一个Node.js服务器,插入一个JSON消息(utf8编码) //Node.js server file (app.js) — gets the json and shows it in a <script> to save it in client JS render(index, {json:{string:"mystring"}}) //Template to render (index.ejs) var data = <%=JSON.stringify(json)%>; 这样我就可以将JSON中的这些variables传递给数据。 JSON比这里更大,我只写了创buildbug的部分:这里包含的string会产生一个“无效字符”JS错误。 我该怎么办 ? 我应该使用哪种编码/解码/转义? 我到处都是utf-8,就像所有其他的string一样,即使是德文或阿拉伯文字也行。 在这种情况下,这是下面的“mystring”打破了应用程序: 如果我删除了红色圆圈中的字符,它的工作原理。 这是string,因为它是在我收到的JSON: "Otto\nTheater-, Konzert- und Gpb\n\u2028\u2028Rhoasse\u00dfe 20\u2028\n51065 K\u00f6ln\n\nTelefon: 0000-000000-0\u2028\nTelefax: 0000-000000\n\nE-Mail: address@mail.com\u2028" 因为它是一个用户input的文本,我必须处理这种字符。 我没有访问代码的PHP部分,只能到nodeJS和客户端JS。 我怎样才能find并删除/转换这些字符在JS?

Cradle / Express / EJS将html转换为实体

我在我的博客上使用Express和EJS的Cradle。 也许我错过了smth,但其中一些将html实体转换为其等价物。 我有doc.quote字段中的HTML,并在这段代码后,它改变 quotesDb.view('list/by_date', { 'startkey' : {}, 'endkey' : null, 'descending' : true }, function(err, res) { if (err) { r.send(); return; } r.partial('quotes', {'quotes' : res}, function(err, str) { console.log(str); sendResponse('content', str); }); }); quotes.ejs: <% for (var i=0; i<quotes.length; i++) { %> <div> <%=quotes[i].value.quote%> </div> <div class="date"> <%=(new Date(quotes[i].value.ts*1000)).toLocaleDateString()%><% if (quotes[i].value.author) { […]

改变express + node.js + ejs的代码包装types

在客户端ejs中,我使用[% code %]代替<% code %>来标记ejs代码,但是我想在express服务器端执行相同的操作。 在客户端,我会做类似var template = new EJS({text: template_src, type:'['}); 这是我的节点代码: app.set('view engine', 'ejs'); app.register('.html', require('ejs')); app.get('/', function(req, res){ res.render('index.html', { title: 'My Site' }); }); 你在哪里设置“types”参数,所以我可以改变这个选项