我使用Node.js,koa2和ejs来建立一个网站,其功能如下
app.js中的
mysqOptlModel.getAllRecords()
.then(async(result) => {
await ctx.render('AllRecordsView', {
allrecords:result
})
})
在前端的list.ejs
<% allrecords.forEach(function(item, i){%>
<tr>
<td><%=item.username%></td>
<td><%=item.createdtime%></td>
</tr>
<%})%>
以下是我的问题
我不想显示完整的用户名,我只想展示一些部分,而有些部分则是*
创建时间是时间戳格式,我想将其更改为日期格式
我目前的解决方案
我在list.ejs
中编写了两个JavaScript函数,并调用它们来使用。
我的期望
我想在app.js
中执行此操作,而不是在list.ejs
有什么想法吗?
答案 0 :(得分:1)
这可能是在app.js
中修改结果的一种方法:
mysqOptlModel.getAllRecords()
.then(async(result) => {
// here the modification happens
modifiedResult = result.map((item) => {
return {
username: item.username.substr(0,3) + '*****',
date: new Date(item.createdtime).toISOString().substr(0,10)
}
})
await ctx.render('AllRecordsView', {
allrecords:modifiedResult // pass the modified result
})
})