传递到把手模板的数据未在客户端显示

时间:2018-07-26 13:21:32

标签: html node.js handlebars.js sequelize.js express-handlebars

我这样将viewData传递到车把模板

app.get('/employee/:value', (req, res) => {
    let viewData = {};
    dataService.getEmployeeByNum(req.params.value).then((data) => {
        if (data) {
            viewData.employee = data;
        } else {
            viewData.employee = null;
        }
    }).catch(() => {
        viewData.employee = null;
    }).then(dataService.getDepartments).then((data) => {
        viewData.departments = data;
        for (let i = 0; i < viewData.departments.length; i++) {
            if (viewData.departments[i].departmentId == viewData.employee.department) {
                viewData.departments[i].selected = true;
            }
        }
    }).catch((err) => {
        console.log(err);
        viewData.departments = [];
    }).then(() => {
        if (viewData.employee == null) {
            res.status(404).send("Employee not found");
        } else {
            res.render("employee", { layout: 'main', viewData: viewData })
        }
    })
});

并尝试像这样在客户端使用它,但根本不显示

<h2>{{viewData.employee.firstName}} {{ viewData.employee.lastName}} - Employee: {{ viewData.employee.employeeNum}}</h2>

我创建了一个辅助函数来字符串化 viewData对象,并显示

{"employee":[{"employeeNum":3,"firstName":"Foster Lewa","lastName":"Billy","email":"louis.jessica86@gmail.com","SSN":"935-74-9918","addressStreet":"8 Midway Park","addressCity":"New York","addressState":"NY","addressPostal":"111","maritalStatus":null,"isManager":true,"employeeManagerNum":1,"status":"Full Time","department":3,"hireDate":"12/02/1999"}],"departments":[{"departmentId":1,"departmentName":null},{"departmentId":2,"departmentName":null},{"departmentId":3,"departmentName":"New Department"}]} 

但从未在客户端(html)中工作,这可能是什么问题?

2 个答案:

答案 0 :(得分:0)

尝试这个。

<h2>{{viewData.employee.1.firstName}} {{ viewData.employee.1.lastName}} - Employee: {{ viewData.employee.1.employeeNum}}</h2>

答案 1 :(得分:0)

viewData 作为数组传递给模板,这是我为获取值而做的事情

<h2>{{viewData.employee.[0].firstName}} {{ viewData.employee.[0].lastName}} - Employee: {{ viewData.employee.[0].employeeNum}}</h2>

谢谢!