2017-01-13 1 views
0

Je suis nouveau à moustache et je suis en cours d'exécution dans certaines questionsMustache JS avec Json itération

Mon JSON ressemble suivant

var Views = { 
    "$id": "11", 
    "name": "Life", 
    "id": "Life_932", 
    "createdDate": "12/01/2017", 
    "updatedDate": "12/01/2017", 
    "defaultView": false, 
    "background": "#1395C6", 
    "share": { 
    "accessType": 82007, 
    "specificUsers": [ 
     { 
     "users": "872", 
     "permission": 1 
     } 
    ] 
    }, 
    "shared": true, 
    "dashletUserId": 932, 
    "Username": "ZAM" 
} 


var temp = '<div class="menuContainer">' + 
       '<div class="createCopytxt {{#shared}}disableClass{{/shared}}"><span class="createCopy"></span>Create Copy</div>' + 
       '<div class="renameDashboardtxt {{#shared}}disableClass{{/shared}}"><span class="renameDashboard"></span>Rename</div>' + 
       '<div class="deleteDashboardtxt {{#shared}}disableClass{{/shared}}"><span class="deleteDashboard"></span>Delete</div>' + 
       '<div class="defaultDashboardtxt"><span class="defaultDashboard"></span>Set as Default</div>' + 
      '</div>' + 

var out = Mustache.render(template, Views); 

Je veux désactiver le createCopytxt classname, renameDashboardtxt et deleteDashboardtxt basé sur l'autorisation des utilisateurs. Actuellement, elle est basée sur la valeur partagée.

Merci d'avance pour votre temps.

Répondre

0

N'incluez la classe que si la propriété "shared" est truey.

<div class="{{#shared}}renameDashboardtxt{{/shared}}"><span class="renameDashboard"></span>Rename</div> 

Si vous voulez remplacer effectivement createCopytxt/renameDashboardtxt/deleteDashboardtxt avec disableClass, vous pouvez faire:

<div class="{{#shared}}renameDashboardtxt{{/shared}}{{^shared}}disableClass{{/shared}}"><span class="renameDashboard"></span>Rename</div> 

Vérifiez les Mustache docs, en particulier la section "inversé": https://github.com/janl/mustache.js

+0

Partager La structure JSON est donnée ci-dessous: - "share": { "accessType": 82007, "specificUsers": [ { "users": "872", "permission": 1 } ] } Je dois l'afficher lorsque l'autorisation utilisateur spécifique est 1 seulement. – shine