5
我有一個可觀察數組的視圖模型。它填充了一些JSON:淘汰賽模板 - 綁定文本到函數,並傳遞了模板數據
<ul id="tiles-ul" data-bind="template: {name:'twitter_template', foreach:socialTiles}">
<script type="text/html" id="twitter_template">
<li class="social-tile box-shadow">
<div class="header">
<div class="header-img">
<img data-bind="attr: { src: actor.avatar}">
</div>
<div class="name_and_time">
<span class="full-name" data-bind="text: actor.title"></span>
<span class="twitter-name" data-bind="text: actor.id"></span>
<span class="how-long-ago" > 5 minutes ago </span>
</div>
</div>
<div class="message-content" data-bind="html: object.content">
</div>
<div class="footer">
<div class="social-icon-twitter">
</div>
</div>
<span data-bind="text: $index"></span>
</li>
</script>
ID喜歡的元素的文本數據綁定要的結果:
this.socialTiles = ko.observableArray([]);
ko.computed(function() {
jQuery.getJSON(this.apiURL+"&callback=?", function (data) {
var theData = data.entries;
tilesModel.socialTiles(theData);
console.dir(theData);
});
}, tilesModel);
模型中的每個項目,我使用模板構建李一個函數,將來自模型的當前數據用作參數。例如:
actor.id是含有用戶(如「http://twitter.com/iamdiddy」)
我想的一個Twitter URL該字符串傳遞給一個函數並返回一個‘#iamdiddy’表示的字符串。
<span class="twitter-name" data-bind="text: getTwitterTag(actor.id)"></span>
在視圖模型
function getTwitterTag("twURL"){
return ... whatever;
}
我怎麼能做到這一點(調用帶有參數的函數,而不是提取#...)
?淘汰賽是否支持這項功能?
$ root.getTwitterTag(actor.id)沒有工作,但沒有什麼工作是$ root.getTwitterTag($數據),接受答案反正因爲它讓我發現了正確的解決方案 – nuway 2013-05-16 15:31:47