簡體   English   中英

Mustache / jQuery / javascript - 如何對mustache變量執行方法?

[英]Mustache/jQuery/javascript - how to perform method on mustache variable?

我有一個簡單的小胡子模板設置,它接受一個對象player並創建一個列表元素。 在胡子中對變量執行javascript方法的最佳方法是什么? 這是一些示例代碼:

var playerTemplate = '<li><span class="player-position">{{ position }}</span><span class="player-name">{{ first_name }} {{ last_name }}</span></li>';
var playerRow = Mustache.to_html(playerTemplate, player);
$('ul#players-list').append(playerRow);

我想做的是:

{{ position.toUpperCase() }}

我寧願不改變對象本身,因為我可能希望{{position}}在其他情況下不是大寫。 有關最干凈最聰明的方法的任何提示嗎?

非常感謝。

Mustache故意非常簡單(“無邏輯模板”),因此您無法做很多事情。 一種選擇是添加positionUC屬性:

player.positionUC = player.position.toUpperCase();

然后在模板中:

{{positionUC}}

您還可以添加功能:

// Note that render(text) will be HTML though...
player.uc = function(text, render) { return render(text).toUpperCase() };

然后在模板中:

{{#uc}}{{position}}{{/uc}}

也許你可以切換到Handlebars並為大寫字母添加幫助器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM