C'est quelque chose que vous résolvez le "contrôleur", qui est le point de logicless la création de modèles.
// some function that retreived data through ajax
function( view ){
if ( !view.avatar ) {
// DEFAULTS can be a global settings object you define elsewhere
// so that you don't have to maintain these values all over the place
// in your code.
view.avatar = DEFAULTS.AVATAR;
}
// do template stuff here
}
C'est en fait BEAUCOUP mieux que le maintien de l'url de l'image ou d'autres médias qui pourrait ou ne pourrait pas changer dans vos modèles, mais faut s'habituer à. Le point est de désapprendre modèle de la " vision en tunnel, un avatar img url est lié à être utilisé dans d'autres modèles, allez-vous maintenir cette url sur X de modèles ou d'un seul des paramètres par DÉFAUT de l'objet? ;)
Une autre option est de faire ce qui suit:
// augment view
view.hasAvatar = !!view.avatar;
view.noAvatar = !view.avatar;
Et dans le modèle:
{{#hasAvatar}}
SHOW AVATAR
{{/hasAvatar}}
{{#noAvatar}}
SHOW DEFAULT
{{/noAvatar}}
Mais qui va à l'encontre de toute la signification de logicless la création de modèles. Si c'est ce que vous voulez faire, vous voulez logique de création de modèle et vous ne devriez pas utiliser la Moustache, mais ne donnez-vous une chance équitable de l'apprentissage de ce concept ;)