Tag: 胡子

使用mustache.js部分快递

所以这可能是我完全误解function的一个例子,但是我正在尝试在node.js中使用partials,以便在类似于{% extends 'something.html' %}各种模板上有一个可重复使用的可重新插入的页眉和页脚。在Django或<? includes 'something.php ?> 在php中<? includes 'something.php ?> 。 据我所知,这是部分是为了什么。 所以在我的app.js使用这个configuration来呈现模板: var mustache = require('mustache'); var template = { compile: function (source, options) { if (typeof source == 'string') { return function(options) { options.locals = options.locals || {}; options.partials = options.partials || {}; if (options.body) // for express.js > v1.0 locals.body = […]

其中的JavaScript模板引擎嵌套适合生成JSON

小胡子和把手都很棒。 我喜欢他们为他们的个人简单和卓越。 小胡子,因为它是一个单一的模板在很多地方和把手,因为它只提供了更多的function。 我面临的挑战是他们似乎已经实现了输出HTML或其他文档结构的标签是成对的,没有分隔符。 为了进一步澄清,如果你有一个项目的数组将会在列表中输出,那么这个效果很好: <ul> {{#each items}} <li>{{name}}</li> {{/each}} </ul> 这很好。 但是如果你想输出类似JSON的东西: [ {{#each items}} { name:{{name}} } {{/each}} ] 这不起作用,因为JSON需要逗号分隔列表中的项目。 而且你不能在最里面的'}'后面加一个逗号,因为这也会导致错误。 有几个post/build议,人们已经要求将可选的分隔符属性添加到#each或添加#join。 一位提交者表示,它应该作为一个插件来实现,因为核心需要简单。 抛开政治。 能够将JavaScript对象格式化为JSONstring似乎非常适合模板。 **最后一个想法。 实际上可能有更好的JavaScript成语来重新格式化一个JavaScript对象。 我想这也是有趣的考虑。 PS:我喜欢这个模板的原因之一是因为它变成了自我logging。 更新: @Kevin在handlebarsjs团队能够创build一个“助手”function,实现了我失踪的function。 这不是很快,但它代码的工作: [ {{#join items sep=','}} { name:{{name}} } {{/join}} ]

为什么我在Mustache中获取模板文件名而不是模板内容

我经历了胡须教程 这个问题与embedded胡须模板到另一个模板有一点相关 除了偏分之外,我还有其他所有的工作 我试图做 base.mustache: {{testVar}} <h2>Names</h2> {{#names}} {{> user}} {{/names}} user.mustache: <strong>{{name}}</strong> 但不是呈现用户模板或它的内容,即名称的价值,它呈现Names c:\blahFolder\user.mustache 我使用hogan-template-compiler来预编译我的模板。 你能弄清楚为什么从上面的信息发生,或者你需要更多的信息? 我假设,我的编译器代码是好的,因为我得到正确呈现testVar值。 如果你真的需要看,这是我的hoganCompiler.js var partialsDir = __dirname + '/views/partials' , jsDir = __dirname + '/public/js/compiled'; var hogan = require('hogan.js') , path = require('path') , join = path.join , fs = require('fs') , onModify , relations = {} , watch; […]

代码上的Javascript小胡子无效模板

我正在申请一个应用程序,我已经通过npm安装胡子。 然后在我的main.js文件中,我像这样导入它: const Mustache = require('mustache') 然后我有一个这样的HTML模板文件: 在html文件的tile部分中的<title>{{ title }}</title> 。 使用节点我已经加载了模板文件,并尝试运行渲染。 代码如下: fs.readFile('template.html', (err, data) => { var mydata = Mustache.render(data, {title: "sometitle"}); fs.writeFile('result.html', mydata, (err) => { if (err) throw err; console.log('The file has been saved!'); }); }); 我不断收到这个错误: TypeError:无效的模板! 模板应该是一个“string”,但“对象”作为胡子#渲染的第一个参数 我怎样才能解决这个问题,我可以改变并保存结果?

如何整合CouchApp,Node.JS,Sammy和Moustache

我设置了一个node.couchapp.js CouchApp并将其推送到我的CouchDB。 Sammy和jQuery默认包含在内。 现在,我想为模板添加胡子,但不知道在哪里? 我可以使用它作为Node.js模块或jQuery插件。 我从一些示例代码开始,只是为了看看它是否有效,但不是: ddoc.lists = { "basic": "function (head, req) { var that = this; provides('html', function () { var to_html = require('modules/mustache').to_html; var members = []; var row; while (row = getRow()) { members.push({club: row.key[0], name: row.key[1]}); } return to_html(that.templates['roster.mustache'], { members: members }); }) }" }; 结果是: {"error":"invalid_require_path","reason":"Object has no […]

在Express with Consolidate和Mustache中使用布局视图

我刚刚开始通过使用Express的Node,最后得到Consolidate JS正常工作,按照Consolidate JS Github页面上的说明,使用Mustache作为模板视图系统。 小胡子正在加载,但我现在想知道如何在模板的渲染中包含布局文件。 默认的Jade系统在layout.jade文件中加载.render方法的内容。 我只是想知道如何做到这一点,但胡须。 任何帮助是极大的赞赏! 码: index.js exports.index = function(req, res){ res.render('index', { title: "Work pl0x?" }); }); index.mustache 欢迎来到{{title}} 我只是想index.mustache内容来在下面的代码(layout.mustache)的“{{content}}”部分。 我怎样才能做到这一点? <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta charset="UTF-8" /> <title>Project Name | {{title}}</title> <link href="/stylesheets/style.css" rel="stylesheet" /> </head> <body> {{content}} </body> </html>

Mu2 vs Mustache.js? 我应该为nodejs模板使用Mu2模块还是Mustache.js模块

我已经决定,我们将使用Mustache作为我们的nodejs项目的模板引擎,但是我没有看到Mu2( https://github.com/raycmorgan/Mu )和mustache.js( https ://github.com/janl/mustache.js )模块。 通常我只是检查Githubnetworking,并与最活跃的社区,但他们似乎都保持得很好。 任何人都可以启发我的差异,以便我可以做出明智的决定。

replaceNode.js中的util.pump()

我最近更新到0.8〜的最新版本的Node.js(1.10〜),运行时我收到一条消息: util.pump() is deprecated. Use readableStream.pipe() instead. 我试图切换我的函数来说可读性(。),但我不认为它的工作是一样的。 所以我有三个问题: util.pump为什么不推荐使用? 如何切换到readableStream.pipe()? 或者3.如何closures此警告? 这里是我使用它的代码(有胡子) var stream = mu.compileAndRender(template_file, json_object_from_db); util.pump(stream, res); 当我用readableStream.pipereplaceutil.pump时,我得到这个错误: ReferenceError: readableStream is not defined 任何人都可以帮助我指出正确的方向吗?

用于Express的胡须(类似)模板引擎?

Express(node.js)是否有一个基于Mustache的模板引擎,或者使用类似的语法? 所有我能find的是haml , jade , ejs , jquery templates和一个基于CoffeeScript(我写的纯JS)。 我想写“正常”的HTML,所以只有ejs和jqtpl会适合。 我已经使用backbone mustache ,所以最好也在服务器端使用Node.js

Node.js + Express – 如何获得小胡子部分工作?

我试图让胡子和Express一起正常工作,而且我们可以猜测,我有麻烦了。 下面一行初始化好的胡子很干净。 variables按预期呈现。 app.register('html', require(__dirname+'/public/js/libs/mustache.js')); 然而,当部分物品被投入混合时,问题开始上升。 随着胡须,这里这部分应该调用标题视图/部分。 {{> header}} 但是,唉,没有任何反应。 :/即使我直接提供部分,小胡子也无法呈现它。 app.get('/', function(req, res) { res.render('welcome', { partials: { header: '<h1>Header</h1>' } }); }); 所以,似乎这些部分根本不工作。 我发现有一个黑客得到的部分有些工作: http://bitdrift.com/post/2376383378/using-mustache-templates-in-express 之后,部分渲染直接在渲染调用中提供(见上),但仍然无法将部分直接渲染到视图/布局: 布局看起来像这样: Behold, the header {{> header}} <p>Let's move to more important stuff…</p> 标题视图看起来像这样: <h1>Header</h1> Express可以自己加载视图,但它不知道如何处理胡须部分…