Усы JS с итерацией Json

Я новичок в усах, и я сталкиваюсь с некоторыми проблемами

Мой JSON выглядит следующим образом

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);

Я хочу отключить classname createCopytxt, renameDashboardtxt и deleteDashboardtxt на основе разрешения пользователей.В настоящее время он основан на общем значении.

Заранее спасибо за ваше время.

1 ответ

  1. Включите класс только в том случае, если свойство «shared» является истинным.

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

    Если вы хотите заменить createCopytxt/renameDashboardtxt/deleteDashboardtxt на disableClass, вы можете это сделать:

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

    Проверьте документы Усов, в частности раздел «перевернутый»: https://github.com/janl/mustache.js