Articles of handlebars.js

把手:使用JavaScriptvariables的索引

所以我想能够做到这样的事情: "{{tickets." + index + ".comments.0.account}}" 我想能够指定数组的索引,我试图从一个JavaScriptvariables中获取数据。 目前这段代码给了我一个错误,说: Expecting 'ID', got 'STRING' 我实际上使用快速句柄与Node.js如果这有所作为。

使用手柄来遍历一个复杂的对象

我有一个特殊的数组,我怎么能迭代呢? 看起来像: { "0.1.0": { "pictures": { "list": "" }, "show": true, "implemented ": false, "percentageDoneVersion": 100, "description": "Programmierung …", "tasks": { "1":{ "percentageDone":10, "description":"Text1…" }, "2":{ "percentageDone":70, "description":"Text2…" }, "3":{ "percentageDone":10, "description":"Text3…" } } } } 我尝试了不同的东西,但是没有成功 谢谢。

把手模板不能正确迭代

我正在使用node.js + handlebars构build一个应用程序。 我的服务器发送两个对象到我的视图: users和companies 。 我的用户加载正常,但由于某种原因,我的公司不会填充我的下拉列表: {{#each users}} <tr> <td id="id">{{id}}</td> <td>{{first_name}}</td> <td>{{email}}</td> <td><button type="button" class="btn btn-primary" id="confirm">Confirm</button></td> <td><button type="button" class="btn btn-primary" id="disable">Disable</button></td> <td><button type="button" class="btn btn-danger" id="delete">Delete</button></td> <td><button type="button" class="btn btn-primary" id="view">View</button></td> <td> <select id="company" class="form-control"> {{#each companies}} <option>{{company_id}}</option> <!– This will not populate –> {{/each}} </select> </td> </tr> {{/each}} 任何人都知道可能会发生什么? 作为一个侧面说明,如果我试图把我的companies放在桌子外面,它就可以工作。 例如: […]

如何读取Handlebars中的对象数组中的属性?

我正在做一个有记分牌的寻宝应用程序。 在scoreboard路线中,我asynchronous地调用了从MongoDB返回JSON数据的函数。 这是函数返回的内容: [ { "_id": "rational", "total": 0 }, { "_id": "creative", "total": 0 }, { "_id": "confident", "total": 60 }, { "_id": "passionate", "total": 30 }, { "_id": "ingenious", "total": 30 } ] _id是球队名称, total是球队得分的数量。 我正在使用Handlebars作为我的模板引擎,而且还是新手。 我想制作一个HTML表格,用相应的总分显示团队名称,但似乎无法弄清楚。 请帮我解决这个问题。

在node.js中的活动菜单项和表示

我正在使用node.js , express和express-handlebars 。 我在我的布局顶部有一个菜单。 在我的server.js ,我设置了所有页面 app.locals.pages = [ { title: 'Home', link: '/' }, { title: 'About', link: '/about' }, { title: 'Contact', link: '/contact' }, ]; 并在布局文件中打印页面 {{#each pages}} <li class="nav-item"> <a class="nav-link" href="{{link}}">{{title}}</a> </li> {{/each}} 但我想添加一个类到当前正在活动的菜单项。 如何保存3个菜单项中的哪一个是活动的?

把手/节点/ Express无法加载文件

所以我正在开发基本的CRUD操作的Node / Express webapp,而且我很难在项目中实现Handlebars。 当我尝试使用句柄时,我的.hbs(以前的.html)页面的样式表都没有加载。 这是文件树: 这是错误: 这里是一个脚本导入语句的例子 index.hbs <!– Bootstrap –> <link href="../vendors/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet"> 最后这里是server.js文件 var express = require('express'), bodyParser = require('body-parser'), path = require('path'), mysql = require('mysql'), dbconfig = require('./config/database'), exphbs = require('express-handlebars'); var connection = mysql.createConnection(dbconfig.connection) connection.query('USE ' + dbconfig.database); var app = express(); //Body Parser Middleware app.use(bodyParser.json()); app.use(bodyParser.urlencoded({extended: false})); //Set static […]

提交不会发布所有数据

这是一个相当简单的问题,但我花了3天寻找一个我找不到的错误。 这个表格只是无故发布“grille de notation”和“Grille d'évaluation”之间的内容。 这是我的forms的代码:我知道这是很大的…对不起,你可以尝试在: https : //institut-villebon-staging.herokuapp.com/formulaires/entretien/0 <div id="page-content-wrapper"> <div class="container-fluid"> <nav class="col-sm-3 col-md-3 hidden-xs" id="myScrollspy" data-pg-collapsed> <ul class="nav nav-pills nav-stacked" data-pg-collapsed> <li class="active"> <a href="#informationsCandidat">Informations du candidat</a> </li> <li> <a href="#GrilleNotation">Grille de notation</a> </li> <li> <a href="#GrilleEval">Grille d'évaluation</a> </li> </li> </ul> </nav> <div id="form_container" class="col-sm-9"> <div class="row"> <div class="col-xs-4 col-md-8"> <ol class="breadcrumb […]

如何使用Node.js和Express在JavaScript中使用GET请求更改页面?

在这个应用程序,用户有一个表,他们可以input数据。 每行有一个“编辑”button,当他们点击那个button时,我想把他们带到一个叫“/ update”的新页面,在那里他们可以修改那个行的值。 我现在已经这样做了,当他们点击更新button时,它会运行editRow函数,传递表的id和行中的数据。 但是,我无法弄清楚如何让路线正常工作。 我使用的是Node.js,Express,Handlebars,但没有使用 jQuery。 app.js (服务器端) app.get('/update', function(req,res){ var context = {}; context.tableID = req.ID; context.element = req.element; res.render('update', context); }); update.handlebars <h1>test for now</h1> main.handlebars <!doctype html> <html> <head> <title>Workout Tracker</title> <link rel="stylesheet" href="css/style.css"> <script src="scripts/buttons.js" type="text/javascript"></script> </head> <body> {{{body}}} </body> </html> buttons.js (客户端) function editRow(tableID, element) { var httpRequest; httpRequest […]

Handlebars和Node.js:{{#if!user}}然后显示loginbutton

我正在创build一个使用Node.js,Express和Handlebars作为模板引擎的loginvalidation应用程序。 如果没有用户login,我希望我的仪表板显示“login”button。 如果用户login,我不希望它显示。 我试过这个没有login… {{#if user}} <a type = "button" class = "btn btn-default" href = "/users/login">Log In</a> {{/if}} 有趣的是,这隐藏了元素。 然后,当我纠正了代码,它应该是…这… {{#if !user}} <a type = "button" class = "btn btn-default" href = "/users/login">Log In</a> {{/if}} 我得到这个错误, 我以前从来没有使用过车把,所以我是盲目的。 任何帮助提前感激!

nodejs handlebars:'TypeError:this.engine不是一个函数'

我尝试使用Express中的句柄模板。 我得到这个错误消息: TypeError:this.engine不是View.render的函数(/home/ubuntu/workspace/node_modules/express/lib/view.js:128:8)… 与此代码: 'use strict'; var express = require('express'); var expressHandlebars = require('express-handlebars'); var app = express(); app.engine('handlebars', expressHandlebars({defaultLayout: 'layout'})); app.set('view engine', 'html'); app.use(express.static('views')); app.route('/single/:id') .get(function (req, res) { res.render(process.cwd() + `/public/single-poll`, { id: req.params.id }); }); app.listen(process.env.PORT, function () { console.log('Node.js listening on port ' + process.env.PORT + '…'); }); 当我用sendFile()replacerender()函数是正常的。 我知道快速js渲染:TypeError:this.engine不是一个函数和Express js呈现错误this.engine不是一个函数和TypeError:this.engine不是一个函数时,试图在Express […]