草庐IT

express-handlebars

全部标签

javascript - 如何使用 CSRF 测试 express form post?

我正在尝试为我的服务器端表单验证编写测试,但我不断收到禁止错误。看来这需要一个两步过程。第一步,从表单中获取CSRF值。第2步,使用CSRF值发布到表单处理程序。但是,无论我如何尝试发帖,我都会遇到禁止的错误。--完整测试:https://github.com/socketwiz/swblog/blob/master/test/contact.js#L57-L100我试过这样更改以下行:https://github.com/socketwiz/swblog/blob/master/test/contact.js#L85.send({name:'foo','X-CSRF-Token':t

javascript - 使用 mustache 模板在 Express 中提供静态文件

我正在尝试从Express提供一个包含静态mustache文件的文件夹,但似乎无法弄清楚如何让它工作。假设我只有一个数据对象,例如{a:'Hello:)'b:'Goodbye:('}还有两个文件,public/a.html{{a}}public/b.html{{b}}我如何才能快速设置为任意数量的静态html文件提供服务并仅用我的一个大对象替换模板化部分?谢谢! 最佳答案 静态文件通常只有在发送给用户之前没有以任何方式处理时才称为static。您要实现的是一个典型的模板系统。您可以按照plugin中的说明进行操作。:varmusta

javascript - Handlebars ,避免编译(忽略)模板的一部分?

有没有办法告诉Handlebar编译器忽略模板block。我知道有\解决方案,例如:\{{is.ignored}}但是有没有什么东西可以做同样的事情,但是对于一个完整的block,比如:{{#eachitems}}{{display}}{{/each}}我相信使用类似{{#ignore}}{{/ignore}}的东西比在任何地方添加\会更好(而且可读性更高).我尝试使用block助手找到一些东西,或者自己构建一些东西,但我无法获得block内内容的非编译版本。 最佳答案 不幸的是,Cyril的回答似乎过时了?我在Handlebars

javascript - 在 Node 脚本中加载预编译的 Handlebars 模板?

我在email-template.hbs有一个简单的Handlebars模板,我想预编译并加载到我的app.js文件中,而不从文件系统读取,并且每次app.js运行时编译它。现在,我有一些看起来像这样的东西:varhandlebars=require('handlebars');varfs=require('fs');varsource=fs.readFileSync('./email-template.hbs','utf-8');vartemplate=handlebars.compile(source);我宁愿有这样的东西:varhandlebars=require('handle

javascript - Handlebars 模板中的 bool 逻辑

是否可以在handlebars条件中执行bool逻辑?现在我用Controller函数来欺骗这种行为,所以我最终得到了ControllerApp.ApplicationController=Ember.Controller.extend({bool1:true,bool2:true,both:function(){returnthis.bool1&&this.bool2;}.property('content.both'),});这允许我使用的Handlebars模板{{#ifboth}}bothweretrue{{/if}}这工作正常,但会引发一些问题。首先,它掩盖了正在发生的事情(

javascript - Node.js 和 Express 应用程序中的 res.render() 和 ejs.render() 有什么区别

我使用EJS我的Node.js和Express应用程序中的模板引擎,到目前为止已经使用了它的功能和渲染,到目前为止还没有遇到任何问题。但是,虽然我总是在服务器端程序中使用语法res.render(filename,options,callback)来呈现文件的内容,但我想知道res.render()和ejs.render()。看起来这两种方法都将渲染文件名作为第一个参数,并将要嵌入到文件中的对象作为第二个参数(如{title:"titlehere"})。res.render()可以将回调函数作为第三个(可选)参数,每当我想使用嵌套渲染时我都会使用它,但是来自EJSGithub存储库的文

javascript - Ember js 在 Controller 中使用 handlebars helper?

我有一个将数字映射到文本的辅助方法-Ember.Handlebars.helper('getStatusText',function(value,options){switch(value){case1:return"Fresh";break;case2:return"Callback";break;default:return"UnabletogetStatus";}});我可以通过{{getStatusText1}}在View中使用助手但是如何在ObjectController中的操作中使用助手?Test.DealController=Ember.ObjectController.

javascript - 如何注册自定义 Handlebars 助手?

经过长时间的搜索,我似乎仍然无法找到有关将我的自定义Handlebars助手放在何处的更多信息。我是否将它们放在中?在我网页的.hbs文件中?我是否将它们放在app.js中?我是否将它们放在页面的路由器中?顺便说一下我要注册的helper:Handlebars.registerHelper("last",function(array){returnarray[array.length-1];});我假设一旦我将该代码放在某处,我就可以通过使用{{lastfoo}}在任何页面上使用它,对吧? 最佳答案 举个例子,你可以看下面的代码:v

javascript - 使用 Gulp 基于 Handlebars 模板编译 partials 和 markdown

我这里有一个名为tpage.hbs的Handlebars模板:Title{{>head}}{{>home-header}}{{{mdcontents}}}head和home-header是局部的。我有一个Markdown文件文件夹,我想根据这个模板制作HTML页面,在模板中mdcontents的位置添加.md文件。我有以下Gulpfile:vargulp=require('gulp');varhandlebars=require('gulp-compile-handlebars');varHB=require('Handlebars');//IknowIdon'tneedtwoHand

javascript - 如何在 Node/Express 中调试 EJS 模板

我正在将PHP模板转换为Node.js/Express中的EJS。模板文件有些复杂,因此调试它们并不容易。Node没有给我任何有用的调试信息,所以这几乎不可能完成这项任务。这是错误消息示例。SyntaxError:Unexpectedstringin"app/views/profile/index.ejs"atObject.Function()atexports.compile(/Users/Gavin/Web/node_modules/ejs/lib/ejs.js:237:14)atObject.exports.render(/Users/Gavin/Web/node_modules