EJS和Express-如何将数据传递到标签属性?

时间:2018-07-18 15:57:59

标签: javascript node.js express ejs

我正在尝试通过一些标签将数据对象传递到HTML页面。这是代码:

<video id="video" class="video-js" poster="<%= data.placeholder %>" >

<source class="link" id="source" src="<%= data.video %>" type='video/mp4'>

我得到一个错误:

  

ReferenceError:数据未定义

这是我的Express代码:

app.get('/lectures/:lecture', (req, res) => {
    const index = req.params.lecture;
    let data = {
        placeholder: `../img/placeholder${index}.svg`,
        video: videoURLs[index]
    };

    res.render('lectures', data);
});

那么,如何将数据传递给标签属性?

1 个答案:

答案 0 :(得分:1)

将渲染功能更改为:

res.render('lectures', { data });

实际上,它取决于ES版本。 如果您使用的是ES6或ES6 +,则可以使用

res.render('lectures', { data });

如果ES版本低于6(可能是ES5) 使用

res.render('lectures', { data: data});