正在将整数添加到数组中

Integers Being Added to Array

本文关键字:数组 添加 整数      更新时间:2023-09-26

我正在尝试使用一个对象数组来简化HTML按钮列表的维护。这是我的代码:

<% links = [{url:"https://github.com/drguildo", icon:"github"}, %>
<% {url:"http://www.flickr.com/photos/drguildo/", icon:"flickr"}, %>
<% {url:"http://instagram.com/therac25", icon:"instagram"}, %>
<% {url:"http://www.last.fm/user/drguildo", icon:"lastfm"}] %>
<% for link in links: %>
<a href="<%= link.url %>"><img src="/img/icons/<%= link.icon %>.png" /></a>
<% end %>

问题是生成的数组如下所示:

[object Object],16,[object Object],17,[object Object],18,[object Object]

这扰乱了输出。为什么对象中穿插着整数?我如何防止它?

我可能是以一种非常次优的方式来做这件事的(我是DocPad、ECO和CoffeeScript的新手),所以任何关于如何改进我的代码的建议都将不胜感激。

您不希望在模板中创建这样的数组。生态模板的意义在于将逻辑/数据与演示分开。单独声明数据,然后使用它来渲染模板。

像这个

eco = require "eco"
fs  = require "fs"
template = fs.readFileSync __dirname + "/views/test.html.eco", "utf-8"
console.log eco.render template, links: [
    {url:"https://github.com/drguildo", icon:"github"}, 
    {url:"http://www.flickr.com/photos/drguildo/", icon:"flickr"},
    {url:"http://instagram.com/therac25", icon:"instagram"},
    {url:"http://www.last.fm/user/drguildo", icon:"lastfm"}
]

然后只是

<% for link in @links: %>
<a href="<%= link.url %>"><img src="/img/icons/<%= link.icon %>.png" /></a>
<% end %>