Tag: 帕格

在ExpressJS中将视图渲染成一个variables(用于AJAX响应)

我想加载部分视图的内容(用Jade编写)到Bootstrap模式对话框中。 为此,我使用AJAX调用。 我只能返回生成的HTML并将其加载到模式中,但是还需要与呈现的视图相处的其他数据。 我想能够像这样返回一个对象(parsing为JSON): response = { some_data: 'blablabla', some_more_data: [5, 8, 10, 67], my_html: '<div>HTML rendered from the Jade template</div>' }; 有没有办法做到这一点? 现在我可以像这样返回呈现的HTML: res.render('employees', {layout: false}); 但是,如何将它存储在一个variables中,以便返回更多的数据,而不必进行更多的AJAX调用?

使用Jade显示input值内的数据

我对Jade相当陌生,并且想要显示一些输出的数据作为文本input的value 。 喜欢这个: input(type="text", name="date", value="THISRIGHTHURR") 但只有值必须是viewpost.date 。 我尝试了多种方式,似乎没有工作: input(type="text", name="date", value=viewpost.date) // doesn't work input(type="text", name="date", value=.=viewpost.date) // doesn't work input(type="text", name="date", value=".=viewpost.date") // doesn't work 我当然可以通过做一些类似的事情来让它在input之外工作 each post, i in viewpost h1.=post.date 我是否也应该循环input ? 这是输出我的viewpostvariables的JS(使用Node和Express)。 // render show post view exports.viewpost = function(db) { return function(req, res) { var id = req.params.id; collection.find({ […]

Jade模板作为html的预处理器

我不会在生产中使用node.js ,但是我喜欢jade的语法,所以我想在开发时将jade模板编译成html 。 鉴于这个文件结构: app/ jade_templates / index.jade subfolder / subpage.jade html_templates / index.html subfolder / subpage.html 我想有一个脚本 , jade_templates目录并编译相应的html模板html_templates任何时候进行更改。 这怎么能做到呢? 谢谢。 编辑翡翠自述有这个示例Makefile,但我不知道如何适应这个我的需要。 JADE = $(shell find pages/*.jade) HTML = $(JADE:.jade=.html) all: $(HTML) %.html: %.jade jade < $< –path $< > $@ clean: rm -f $(HTML) .PHONY: clean

PHP与Node.js – HTML呈现与Jade的Node.js较慢吗?

假设我们每天有数百万个请求。 使用Jade的Node.js中的HTML处理是否比PHP的渲染引擎慢或更快? 或者不重要,因为差别很小? 我使用的是Jade模板引擎的 Node.js ,我非常喜欢它。 但我总是那个担心表演的人。 我从PHP开始我的开发生涯,这很有趣,但是现在Node看起来好多了,所以我决定切换。 我使用Jade渲染HTML,因为node.js本身就缺less它(我知道这听起来有点愚蠢,因为Jade也是节点:P)。 但是因为Jade是Node中的一个模块,所以我有点困惑,也许这会降低渲染过程的速度。

没有玉的高速发电机

我正在尝试使用快速生成器生成一个快速骨架。 所以这将是: $ npm install express-generator -g 但是,它增加了一堆自动的玉文件。 我想知道是否有一种方法来摆脱这些玉文件,并使用HTML与快递生成器 谢谢!

用Jade编写dynamicCSS

我正在尝试使用Jade写出一些dynamicCSS,如下所示: style(type='text/css') each item in colors .#{item.class} { background-color : #{item.background}; color: #{item.foreground}; } 但是,这给出了以下错误: ReferenceError: media='print') 7| style(type='text/css') > 8| – for(var item in colors) 9| .#{item.class} { background-color : #{item.background}; color: #{item.foreground}; } 10| block Content 11| include scheduleTemplate item is not defined 如果我删除样式标签,它呈现罚款。 有什么方法可以在样式块中使用迭代?

带有快速模板或纯HTML的AngularJS? 优点和缺点?

Express JS使用模板来生成HTML,然后服务器将它们发送给客户端作为响应。 可能有几个其他模板可以从中生成HTML。 我能够发现的是: 翡翠( http://jade-lang.com/ ) EJS( http://embeddedjs.com/ ) 在我的应用程序中,我需要使用ExpressJS和AngularJs。 我对这两种技术都很陌生。 在学习angular的时候,我不得不在纯HTML中使用它。 在学习ExpressJs之后,我意识到,为了使用angularjs,我需要在发送到客户端时将它们转换为HTML的任何上述模板中使用它们。 现在,我想使用expressjs作为我的服务器和angularjs作为我的客户端应用程序。 为此,我想我有两个select。 选项1 我可以完全停止使用模板,并使用我们的NodeJS服务器通过发送简单的HTML文件进行响应。 这些HTML文件将包含AngularJS编码。 然后,在客户端,AngularJS将作为我们的应用程序。 它会要求来自服务器的其他HTML文件。 或者它也可以像AJAX一样使用,在那里我们只能请求这条信息来更新页面的一部分,而不是刷新整个页面的一个小的改变。 选项2 我可以在expressjs模板(jade或ejs)中使用angularjs。 请帮助我理解两种select的优缺点。 在这种情况下,哪一个将是您的select。

dynamic链接与翡翠

使用Jade + Express + Node.js + Mongoose + MongoDB作为我的应用程序,但是我遇到的这个问题可能在Jade中: 我有一些代码如下,打印标题,作者的职位列表 div#articles -each post in records div.article #{post.title} was written by #{post.author} <a href ="#{post.title}"> Link to Article </a> 现在我想链接在书面翡翠而不是HTML,但是当我更换线 a(href='#{post.title}') 它链接到/#{post.title}而不是像/ newpost1这样的variables名。 这样做 a(href=#{post.title}) 返回一个错误。 我确定这是一个语法问题,但是我在GitHub文档中找不到解决scheme

Jade模板引擎 – 每个迭代偏移量

有没有办法在使用Jade模板引擎时抵消“每个”迭代? 例如,在传入名为list的对象时: ul each item in list li #{item} 会输出 <ul> <li> Item 1 </li> <li> item 2 </li> <li> item 3….. … </ul> 但是我希望第一个项目的显示方式与其余项目不同,例如: <ul> <li> Item 1: First Item in list! </li> <li> item 2 </li> <li> item 3….. … </ul> 那么有没有人知道一种方法来抵消在Jade中的'each'语句,以便我可以分别渲染第一个项目,然后渲染每个从第二个索引开始的项目?

提交翡翠表格

以下Jade表单模板有什么错误? 我无法得到它提交的价值。 div form(action='/signup',method='post') div(data-role='fieldcontain') fieldset(data-role='controlgroup') label(for='email') email input(id='email',type='text',value='',placeholder='@') div#passworddiv(data-role='fieldcontain') fieldset(data-role='controlgroup label(for='password') password input(id='password',type='password',value='',placeholder='') div(id='hiddendiv',data-role='fieldcontain') fieldset(data-role='controlgroup') label(for='hidden_password') password input(id='hidden_password',type='text',value='',placeholder='') div(data-role='fieldcontain') fieldset(data-type='vertical', data-role='controlgroup') label(for='showpass') show password input(id='showpass',type='checkbox') div(data-role='fieldcontain') input(type='submit',value='Sign Up',data-transition='fade', data-theme='c')