Tag: 帕格

如何在Node.js Express应用程序中呈现预编译的Jade(Pug)模板?

我有一个nodejs应用程序,使用Express和Jade(现在帕格)。 我想预编译玉石模板以获得更好的性能。 我已经能够使用jade –client将所有.jade文件转换为相应的.js。 如何在我的应用程序中使用这些js文件? 我没有很多nodejs / express的经验,但我认为它必须要求改变渲染引擎? 我已阅读官方文档,说使用runtime.js但我找不到任何文件,如何使用。

以asynchronous方式执行Express res.render

我有一个nodejs应用程序,其中res.render方法是以约400毫秒的阻塞方式。 我如何处理这个以非阻塞的方式执行? 我的apache基准testing需要12秒来执行大约30个并发请求。 我如何以更好的方式实现这一点? var start = +new Date; //fetch data from redis console.log('time taken to fetch data from redis ' + (+new Date – start)); //30 ms res.render('some_jade_view', params); console.log('time taken to render data ' + (+new Date – start)); //530 ms 我尝试了process.nextTick但是没有多大帮助,ab结果是一样的。

如何在JavaScript Node.js中基于单个值dynamic分割数组

我需要基于JavaScript中的单个值dynamic分割数组。 我有一个数组: var dataStuff = [ { Name: 'Apple', Tag: 'Fruit', Price: '2,5'}, { Name: 'Bike', Tag: 'Sport', Price: '150'}, { Name: 'Kiwi', Tag: 'Fruit', Price: '1,5'}, { Name: 'Knife', Tag: 'Kitchen', Price: '8'}, { Name: 'Fork', Tag: 'Kitchen', Price: '7'} ]; 我期望数组通过标签拆分,例如。 var Fruit = [ { Name: 'Apple', Tag: 'Fruit', Price: '2,5'}, { […]

(不)将局部variables传递给Express(node.js)中的Jade模板

这是我的情况:我有一个login.jade模板,我authentication用户。 在那个模板里面我有几个如果是这样的: – if (badLogin) div#loginErr | <strong>Please try again</strong> | | The password or username you entered is incorrect. – if (loginError) div#loginErr | <strong>Please try again later</strong> | | Our authentication service isn't available at the moment. 在Express中我总是必须声明所有可能在Jade模板中使用的局部variables。 否则我会得到: loginError is not defined 我的观点是,如果在Jade模板中,我会有10个包含局部variables的“if”语句,而不是渲染时,我将不得不始终传递这10个variables,即使我只在该特定情况下使用这个variables。 我只是想,如果我不把任何variables传递给Jade模板,那么“if(var)”的结果就是“false”。 任何工作的机会呢?

如何在Pug(Jade)模板中使用HTML5模式属性

使用帕格(以前称为Jade)模板引擎,我怎样才能使用input的模式属性 ? 当我使用如下模式: input( type="tel", pattern="\d{7}" ) 呈现的模式是: <input type="tel" pattern="d{7}"> 我也尝试过使用非转义属性 !=但它仍然逃避\字符。 注意:它可以完美的使用pattern="[0-9]{7}" 。

Slickgrid基本示例 – 在node / express中,只加载第一行数据,但不可见

我试图运行一个几乎没有修改的SlickGrid的example1-simple.html版本。 我在Mac OS X Lion上看到了与Chrome / Safari / Firefox相同的行为。 一旦我拥有了所有的CSS / JS依赖关系,我可以直接加载示例HTML页面(以及我稍微修改过的版本),而不会有任何麻烦。 但是,当我尝试基本上与node / express / jade(使用res.render() )相同的页面,加载标题(列名称)行,并通过查看呈现的HTML,我可以看到我的数据的第一行加载,但我没有看到它在浏览器(我试图加载10行数据)。 所有相关的CSS / JS文件似乎正在加载,我没有看到在浏览器控制台或我的节点控制台中的任何错误。 我已经复制了下面的整个grid-canvas div 。 <div class="grid-canvas" style="height: 250px; width: 240px; "> <div class="ui-widget-content slick-row even" row="0" style="top:0px"> <div class="slick-cell l0 r0">Battery test #1.csv</div> <div class="slick-cell l1 r1">1024</div> <div class="slick-cell l2 r2">1335237255112</div> </div> </div> 我很确定JavaScript是正确的,因为它几乎完全匹配示例HTML页面,并且在我将其replace为example1-simple.html文档并直接访问它时运行良好。 另外,当使用express来呈现页面时,我可以在new […]

在JADE中的算术运算符

我用NODE.js使用Jade模板引擎 我有两个variables: a = 0.0378 b = 0.1545 在玉我做: – var result = a + b*2 当我做#{result}时,我得到一个非常奇怪的数字 0.03780.309 它似乎将数字连接成string。 有人能告诉我如何在Jade中使用算术运算符? 谢谢

visitFunction错误是什么意思?

运行Node.js@0.8.15 + Express@3.0.4 + Jade@0.27.7 + Stylus@0.31.0。 出于某种原因得到以下错误。 有人知道这是什么意思吗? 我不认为我做了什么奇怪的事情。 这是我在做的时候发生的事情: res.render(view, response); Property 'visitFunction' of object #<Object> is not a function at Object.Compiler.visitNode (/app/node_modules/jade/lib/compiler.js:176:32) at Object.Compiler.visit (/app/node_modules/jade/lib/compiler.js:161:10) at Object.Compiler.visitBlock (/app/node_modules/jade/lib/compiler.js:253:12) at Object.Compiler.visitNode (/app/node_modules/jade/lib/compiler.js:176:32) at Object.Compiler.visit (/app/node_modules/jade/lib/compiler.js:161:10) at Object.Compiler.compile (/app/node_modules/jade/lib/compiler.js:78:10) at parse (/app/node_modules/jade/lib/jade.js:101:23) at Object.exports.compile (/app/node_modules/jade/lib/jade.js:163:9) at Object.exports.render (/app/node_modules/jade/lib/jade.js:215:17) at View.exports.renderFile [as engine] (/app/node_modules/jade/lib/jade.js:243:13)

在Jade中调用mixin时,“+”和mixin关键字有什么区别?

文档告诉我们通过在实际的mixin中join关键字mixin来调用一个mixin。 .bar mixin foo(arguments) 但在不同的地方,我看到人们通过加一个加号(+)来调用一个mixin,比如: .bar +foo(arguments) 有人可以解释一下,因为文档似乎没有显示它的差异。 我试了两个例子,似乎都工作。 是+只是一个速记?

Express + AngularJS + HTML:ng-include不起作用(404 – 页面未find错误)

我是AngularJS的新手。 我正在尝试使用ng-include在我的主HTML页面中包含外部HTML页面。 但问题是我不能够包括它,并获得404.以下是文件夹结构和代码, 项目文件夹结构: buttonClick.jade (这是首页。) doctype html html(ng-app) head link(rel='stylesheet', href='/stylesheets/bootstrap.min.css') link(rel='stylesheet', href='/stylesheets/style.css') script(src='/javascripts/angular.min.js') body(class="mainPage") //include footer.html include pageinclude.html pageinclude.html <div> <div>Include Page Demo</div> <div ng-include="'footer.html'"></div> </div> 注意: 1)当我包含footer.html页面直接在.jade文件,然后它工作正常。 但是当我在HTML文件中使用ng-include时,它不起作用。 2)我也尝试了以下ng-include方法, <div ng-include="'footer.html'"></div> <ng-include src="'footer.html'"></ng-include>