Gidonların ruhu, "mantıksız" olmasıdır. Bazen bu onunla savaştığımızı hissettirir ve bazen çirkin iç içe if / else mantığı ile sonuçlanırız. Sen olabilir bir yardımcı yazma; birçok kişi "daha iyi" koşullu bir operatörle gidonu arttırır veya çekirdeğin bir parçası olması gerektiğine inanır . Bence bunun yerine,
{{#if FriendStatus.IsFriend}}
<div class="ui-state-default ui-corner-all" title=".ui-icon-mail-closed"><span class="ui-icon ui-icon-mail-closed"></span></div>
{{else}}
{{#if FriendStatus.FriendRequested}}
<div class="ui-state-default ui-corner-all" title=".ui-icon-check"><span class="ui-icon ui-icon-check"></span></div>
{{else}}
<div class="ui-state-default ui-corner-all" title=".ui-icon-plusthick"><span class="ui-icon ui-icon-plusthick"></span></div>
{{/if}}
{{/if}}
bunu yapabilmeniz için modelinizdeki şeyleri düzenlemek isteyebilirsiniz,
{{#if is_friend }}
<div class="ui-state-default ui-corner-all" title=".ui-icon-mail-closed"><span class="ui-icon ui-icon-mail-closed"></span></div>
{{/if}}
{{#if is_not_friend_yet }}
<div class="ui-state-default ui-corner-all" title=".ui-icon-check"><span class="ui-icon ui-icon-check"></span></div>
{{/if}}
{{#if will_never_be_my_friend }}
<div class="ui-state-default ui-corner-all" title=".ui-icon-plusthick"><span class="ui-icon ui-icon-plusthick"></span></div>
{{/if}}
Sadece bu bayraklardan sadece birinin doğru olduğundan emin olun. Muhtemelen, bunu if/elsif/else
sizin görüşünüzde kullanıyorsanız, muhtemelen başka bir yerde de kullanıyorsunuzdur, bu nedenle bu değişkenler gereksiz olmayabilir.
Yalın tutun.