Условие пользовательского интерфейса в шаблоне - PullRequest
0 голосов
/ 08 июня 2018

В шаблоне я хочу, чтобы 30 было жирным и синим.А остальная часть текста шаблона не синяя и не полужирная.

          labels: {
                    visible: true,
                    margin: {
                        left: 55
                    },
                    color: "#1246BB",
                    format: "{0}",
                    template: "#= value # \n <b>30</b>"
                },

edit: вот плункер http://dojo.telerik.com/IzAcURaD/16

1 Ответ

0 голосов
/ 08 июня 2018

Если в вашем коде есть условие, используйте оператор if:

template: "# if (value == 30) { #<strong>#= value #</strong># } else { ##=value## } #"

Приведенный выше шаблон печатает <strong>30</strong> в случае value == 30 или просто значение в противном случае.

Полезные ссылки:

ОБНОВЛЕНИЕ

Шаблон метки диаграммы не является распространенным шаблоном.Выходные данные выводятся в теге <text>, который не может обрабатывать теги html.Поэтому я нашел свойство с именем series.label.visual, в котором можно правильно отформатировать вывод:

labels: {
    font:"10px tahoma;", // I removed the 'bold' style from the default font
    visual: function(e) {
      // createVisual() method returns the default style to be used as a base style
      var visual = e.createVisual();

      // Some checkings
      if (e.text && Number(e.text) == 70 && visual.children) {
        // The 'visual' object returned from createVisual() has an array of child items. 
        // Below we are iterating through it to change the desired values
        visual.children.forEach(child => {
          if (child.options) {
            // Now we add the bold style to the font
            child.options.font = "bold 10px tahoma;";
          }
        });
      }

      // Return the updated visual styles
      return visual;
    }
},

Демо

...