Tag: 帕格

无法使用Passport.js和Express 4访问req.user

我一直在用Passport,Express 4和Jade创build应用程序。 我想向用户显示当他们login时更改的导航栏。 但是,我无法访问除configuration文件页面之外的任何其他页面的req.user,该页面调用isLoggedIn: function isLoggedIn(req, res, next) { // if user is authenticated in the session, carry on if (req.isAuthenticated()) return next() // if they aren't redirect them to the home page res.redirect("/login") } 使用任何其他函数在未login时不redirect用户将导致req.user undefined 。 我得到这样的用户: router.get("/profile", isLoggedIn, function(req, res) { res.render("profile", { title: 'Gebruikersprofiel van ' + req.user.firstname + " " […]

Node,Express,Ajax和Jade示例

我正在寻找一个Node / Express / Jade页面使用客户端和服务器端代码使用Ajax调用进行更新的简单示例。 我有点麻烦把它放在我的头上。

我如何更新翡翠模板forms的ajax文章?

我已经使用默认的视图引擎玉来build立一个基本的node.js web应用程序。 当用户第一次加载页面时,会发生以下情况 app.get('/', function(req, res){ res.render('index', { title: 'Test', mode: "user" }); }); 我不能解决的是如何改变我最初通过ajax调用进入玉模板的参数。 app.post('/', function(req, res){ console.log(req.body.list); res.redirect('back'); // I imagine the code needs to go here and look somewhat like the following // // res.?update-view({ // mode: "admin" // }); }); 如果有人有这方面的工作经验,您的意见将不胜感激。

你如何dynamic地设置一个Jade模板的布局,以在Node.js / Express 3.0中进行扩展?

我有3个文件:layoutA.jade,layoutB.jade和index.jade。 我怎样才能以编程方式设置index.jade将扩展的布局? 我试过使用: app.set('view options', { layout: false }); 有: res.render('index', { title: 'Express', layout: 'layoutB' }); // older 2.x way? 我似乎无法重写index.jade文件中明确设置的任何东西。 忽略index.jade文件中的延长线也不起作用。

用nodejs服务dynamicJavaScript文件

问题 如何dynamic提供JavaScript文件? 具体来说,脚本保持其大部分的身体,但一些variables变化(想象HTML Jade模板,但这是纯JavaScript)。 脚本 当用户或浏览器(通常HTTP GET)访问/file.js传递参数api ,例如/file.js?api=123456 ,我想输出纯粹的JavaScript,我可以把123456放在我的代码里面,dynamic。 内容types是application/javascript 。 样品: var api = #{req.query.api}; //Pseudo //The rest of my javascripts template … 从我的主要.js文件,我已经build立了路线: app.get( '/file.js', function( req, res ) { //Pseudo code that I would like to achieve var name = req.query.name; res.render( 'out_put_javascript_file_from_jade_file.jade', { name: name } ); }); 所以当一个人访问/file.js ,脚本文件将根据URL中传递的参数api不同而呈现。 我能想到的唯一可能的dynamic方式是使用Jade,但它不允许纯JavaScript模板。 […]

如何使用Gulp和gulp-data从单一的玉石模板生成多个html文件

我正在用Gulp创build一个静态站点生成器。 我想知道如何pipe每个数据(JSON)到一个单一的玉模板产生多个HTML文件。 这里是吞咽'模板'的任务: gulp.task('templates', function () { 'use strict'; var myData = JSON.parse(fs.readFileSync('./_assets/data/content.json')); var myPages = myData.pages; var myPosts = myData.posts; gulp.src('./_assets/templates/index.jade') .pipe(data(function (file) { return myData; })) .pipe(jade()) .pipe(minifyhtml()) .pipe(gulp.dest('./_site/')) .pipe(connect.reload()); // this is my dumb attempt at trying to // output each piece of data and than // have jade create an html […]

node.js / Jade – 如何预先编译jade文件并caching它?

框架:node.js / express.js / Jade 问题:在生产env中,当一个jade文件被快速渲染时,jade的caching会使未来的渲染速度更快。 当我启动node.js应用程序时,我怎么能预先编译(或)预渲染(如热身)所有的玉文件,所以它已经在caching中,当请求开始进入… 我可以使用文件夹recursion,我只需要知道如何预编译(或)预渲染。 这可能吗?

如何在Express中使用Underscore模板而不是Jade?

我不想使用默认使用Express的Jade模板引擎。 我试图按照这个指南,但它失败了: http://blog.luksidadi.com/expressjs-underscore-template/ 有问题的错误是: node.js:201 throw e; // process.nextTick error, or 'error' event on first tick ^ Error: callback function required at Function.engine (/home/me/blog/node_modules/express/lib/application.js:173:38) at Object.<anonymous> (/home/tk/blog/app.js:28:5) at Module._compile (module.js:432:26) at Object..js (module.js:450:10) at Module.load (module.js:351:31) at Function._load (module.js:310:12) at Array.0 (module.js:470:10) at EventEmitter._tickCallback (node.js:192:40) 当我尝试启动服务器时遇到以下情况: node app.js 如何解决这个问题? app.js: /** * Module dependencies. */ […]

从MEAN堆栈开始,只是哼了一声

所以,我正在得到平均水平。 一切都安装好了。 我有一些问题,但我希望有一些关于如何阅读这些错误日志的指导。 我来自Rails,供参考。 首先,跟着http://mean.io/,npm npm install有一些问题,但是更新和清除caching已经处理了。 现在我很咕噜 我得到的第一件事是: Express app started on port 3000 events.js:72 throw er; // Unhandled 'error' event ^ Error: failed to connect to [localhost:27017] at null.<anonymous>(D:\Dropbox\Apps\mean_projects\first\node_modules\mongoose\node_modules\mongodb\lib\mongodb\connection\server.js:540:74) at EventEmitter.emit (events.js:106:17) at null.<anonymous> (D:\Dropbox\Apps\mean_projects\first\node_modules\mongoose\node_modules\mongodb\lib\mongodb\connection\connection_pool.js:140:15) at EventEmitter.emit (events.js:98:17) at Socket.<anonymous> (D:\Dropbox\Apps\mean_projects\first\node_modules\mongoose\node_modules\mongodb\lib\mongodb\connection\connection.js:478:10) at Socket.EventEmitter.emit (events.js:95:17) at net.js:441:14 at process._tickCallback (node.js:415:13) 22 Dec 21:03:14 – […]

没有指定默认引擎,没有提供扩展(expressJS和玉)

这是我的(简体) app.coffee : app.set('views', __dirname + '/app/views') app.set('view enigne', 'jade') app.listen 8000 但是,当我在浏览器中访问我的应用程序时,出现以下错误消息: Error: No default engine was specified and no extension was provided 编辑 :原来我是一个白痴,拼写错误“引擎”。 感谢@lascort指出它!