0

変更できない外部 API を使用しています。とりわけ、画像のリストを次のように返します。

"image": [
    {"#text": "http://userserve-ak.last.fm/serve/34/24816431.jpg", "size": "small"},
    {"#text": "http://userserve-ak.last.fm/serve/64/24816431.jpg", "size": "medium"},
    {"#text": "http://userserve-ak.last.fm/serve/126/24816431.jpg", "size": "large"},
    {"#text": "http://userserve-ak.last.fm/serve/252/24816431.jpg", "size": "extralarge"},
    {"#text": "http://userserve-ak.last.fm/serve/_/24816431/Art+Brut+street.jpg", "size": "mega"}
],

ただし、{{image.2.#text}} を介してハンドルバーで画像の 1 つを使用しようとすると、ハッシュ記号が原因でぐらつきがスローされます。

誰でもそれを回避する方法について何か考えがありますか?

4

2 に答える 2

1

ハンドルバーは意図的にシンプルになっているため、テンプレート内でできることはあまりありません。ただし、一部の外部 API が醜さを増しているからといって、それをそのまま使用する必要があるわけではありません。テンプレートに何かが到達する前に、JavaScript のデータにある程度の意味を持たせます。次のような単純なものです。

for(var i = 0; i < image.length; ++i) {
    image[i].text = image[i]['#text'];
    delete image[i]['#text'];
}

テンプレートが話題に{{image.2.text}}なり、問題が解消されます。

于 2013-03-20T01:13:47.493 に答える
0

Backbone と Hanledbars を使用する Last.fm API で同じ問題が発生し、テンプレートで機能するようになりました。

<img src="{{ image.[1].[#text] }}" alt="{{ realname }}" />
于 2014-12-21T01:42:17.320 に答える