Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Русский
  3. ioBroker
  4. Визуализация
  5. ioBroker.vis Драйвер
  6. Написание своего виджета

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.1k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    939

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Написание своего виджета

Geplant Angeheftet Gesperrt Verschoben ioBroker.vis Драйвер
15 Beiträge 2 Kommentatoren 3.2k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • I Offline
    I Offline
    instalator
    schrieb am zuletzt editiert von
    #4

    Вообщем все печально, я вообще въехать не могу как добавить виджет, запутался в коде.

    Еще и index.html и edit.html не пересоздаются каждый раз.

    Приходится редактировать виджет в файлах index.html и edit.html.

    Хотел добавить вот такой виджет http://www.3quarks.com/en/SegmentDisplay/

    Может кто возьмется или объяснит на пальцах, что и как устроено в коде vis

    Все что удалось это тупо вывести значение переменной…
    6305_flot_arbeit.png
    6305_flot_bad_gross.png
    6305_flot_bad_klein.png
    6305_flot_zimmer3.png
    6305_flot_zimmer2.png
    6305_flot_zimmer1.png
    6305_flot_eg.png
    6305_flot_lueftung.png
    6305_flot_aussen.png

    Высокий уровень Децибел вреден для здоровья!

    http://blog.instalator.ru/

    1 Antwort Letzte Antwort
    0
    • BluefoxB Offline
      BluefoxB Offline
      Bluefox
      schrieb am zuletzt editiert von
      #5

      @instalator:

      @Bluefox:

      По моему браузер пытается на каждом этапе отрисовать canvas.

      Я обошёл эту проблему так:

      <%== this.data.attr("html_prepend") %><%
      var canvas = '
      
      <canvas id="' + this.data.attr('oid') +'" width="' + this.data.attr('dialog_width') +'" height="100%"></canvas>
      
      ';
      <%== canvas %>
      <%== (parseFloat(vis.binds.basic.formatFloat(this.data)) == 1 ? this.data.attr("html_append_singular") : this.data.attr("html_append_plural")) %>
      
      

      То есть сначала полностью собрать canvas тег, а потом его за раз отрисовать. <%== canvas %> Должен вывести переменную? у меня ничего не выводится
      Я забыл указать закрывающую скобку

      <%== this.data.attr("html_prepend") %><%
      var canvas = '
      
      <canvas id="' + this.data.attr('oid') +'" width="' + this.data.attr('dialog_width') +'" height="100%"></canvas>
      
      ';
      %>
      <%== canvas %>
      <%== (parseFloat(vis.binds.basic.formatFloat(this.data)) == 1 ? this.data.attr("html_append_singular") : this.data.attr("html_append_plural")) %>
      
      

      или так

      <%== this.data.attr("html_prepend") %><%
      <%== '
      
      <canvas id="' + this.data.attr('oid') +'" width="' + this.data.attr('dialog_width') +'" height="100%"></canvas>
      
      ' %>
      <%== (parseFloat(vis.binds.basic.formatFloat(this.data)) == 1 ? this.data.attr("html_append_singular") : this.data.attr("html_append_plural")) %>
      
      
      1 Antwort Letzte Antwort
      0
      • I Offline
        I Offline
        instalator
        schrieb am zuletzt editiert von
        #6

        @Bluefox:

        Я забыл указать закрывающую скобку

        <%== this.data.attr("html_prepend") %><%
        var canvas = '
        
        <canvas id="' + this.data.attr('oid') +'" width="' + this.data.attr('dialog_width') +'" height="100%"></canvas>
        
        ';
        %>
        <%== canvas %>
        <%== (parseFloat(vis.binds.basic.formatFloat(this.data)) == 1 ? this.data.attr("html_append_singular") : this.data.attr("html_append_plural")) %>
        
        

        или так

        <%== this.data.attr("html_prepend") %><%
        <%== '
        
        <canvas id="' + this.data.attr('oid') +'" width="' + this.data.attr('dialog_width') +'" height="100%"></canvas>
        
        ' %>
        <%== (parseFloat(vis.binds.basic.formatFloat(this.data)) == 1 ? this.data.attr("html_append_singular") : this.data.attr("html_append_plural")) %>
        
        ```` `  
        

        Хорошо, а как в script засунуть параметры виджета? и чтобы потом в '

        <canvas id="…" отобразить/с/определенными/параметрами?/Вообще/как/из/виджета/можно/выполнить/код/js?</r=""></canvas>

        Высокий уровень Децибел вреден для здоровья!

        http://blog.instalator.ru/

        1 Antwort Letzte Antwort
        0
        • BluefoxB Offline
          BluefoxB Offline
          Bluefox
          schrieb am zuletzt editiert von
          #7

          Например````
          vis.binds.basic.formatFloat

          и есть код JS.
          [6305_flot_lueftung.png](/assets/uploads/files/6305_flot_lueftung.png)
          1 Antwort Letzte Antwort
          0
          • I Offline
            I Offline
            instalator
            schrieb am zuletzt editiert von
            #8

            @Bluefox:

            Например````
            vis.binds.basic.formatFloat

            и есть код JS. `  
            

            т.е. это мы вызываем функуию formatFloat а это типо ветки с функциями vis.binds.basic.?

            Что означают эти скобки <%== ? <% или <%= и <%== в чем разница?

            Высокий уровень Децибел вреден для здоровья!

            http://blog.instalator.ru/

            1 Antwort Letzte Antwort
            0
            • BluefoxB Offline
              BluefoxB Offline
              Bluefox
              schrieb am zuletzt editiert von
              #9

              @instalator:

              @Bluefox:

              Например````
              vis.binds.basic.formatFloat

              и есть код JS. `  
              

              т.е. это мы вызываем функуию formatFloat а это типо ветки с функциями vis.binds.basic.? `
              Всё верно.
              @instalator:

              Что означают эти скобки <%== ? <% или <%= и <%== в чем разница? `
              Это синтаксис CanJS-EJS (Описание http://canjs.com/guides/EJS.html)

              <%== - вывод HTML текста без изменнений в это место

              <%= - вывод текста (все теги будут преобразованы - escaped)

              <% выполняет написанный JS код

              1 Antwort Letzte Antwort
              0
              • BluefoxB Offline
                BluefoxB Offline
                Bluefox
                schrieb am zuletzt editiert von
                #10

                Можешь вот здесь посмотреть, как можно было встраивать:

                https://github.com/ioBroker/ioBroker.vi … ather.html

                Ищи tplSegmentClock: function (el, data)
                48_clock.gif

                1 Antwort Letzte Antwort
                0
                • I Offline
                  I Offline
                  instalator
                  schrieb am zuletzt editiert von
                  #11

                  @Bluefox:

                  Это синтаксис CanJS-EJS (Описание http://canjs.com/guides/EJS.html)

                  <%== - вывод HTML текста без изменнений в это место

                  <%= - вывод текста (все теги будут преобразованы - escaped)

                  <% выполняет написанный JS код `
                  Да это просто магия) Буду дальше вникать… Спасибо.

                  @Bluefox:

                  Можешь вот здесь посмотреть, как можно было встраивать:

                  https://github.com/ioBroker/ioBroker.vi … ather.html

                  Ищи tplSegmentClock: function (el, data) `
                  :o час и готово?) я два вечера разобраться не мог.

                  Высокий уровень Децибел вреден для здоровья!

                  http://blog.instalator.ru/

                  1 Antwort Letzte Antwort
                  0
                  • I Offline
                    I Offline
                    instalator
                    schrieb am zuletzt editiert von
                    #12

                    Добавил себе, часы почему то не работают, да они и не нужны были, переменную отображает, теперь окно управления нагревателем выглядит как оригинальная панель управления)

                    Высокий уровень Децибел вреден для здоровья!

                    http://blog.instalator.ru/

                    1 Antwort Letzte Antwort
                    0
                    • BluefoxB Offline
                      BluefoxB Offline
                      Bluefox
                      schrieb am zuletzt editiert von
                      #13

                      Часы поправил.

                      Вот только недавно хотел написать в форум вопрос о хороших цифровых часах. А тут ты со ссылкой.

                      Поэтому я так быстро встроил.

                      Если ещё какие-нибудь виджеты найдёшь, говори. ;)

                      1 Antwort Letzte Antwort
                      0
                      • BluefoxB Offline
                        BluefoxB Offline
                        Bluefox
                        schrieb am zuletzt editiert von
                        #14

                        Тоже неплохо выглядит http://www.3quarks.com/en/SVGClock/index.html

                        1 Antwort Letzte Antwort
                        0
                        • I Offline
                          I Offline
                          instalator
                          schrieb am zuletzt editiert von
                          #15

                          @Bluefox:

                          Если ещё какие-нибудь виджеты найдёшь, говори. ;) `
                          Не совсем готовые виджеты, интересная библиотечка, выбор дат и т.п. можно организовать

                          http://demo.mobiscroll.com/select/basic/

                          Высокий уровень Децибел вреден для здоровья!

                          http://blog.instalator.ru/

                          1 Antwort Letzte Antwort
                          0
                          Antworten
                          • In einem neuen Thema antworten
                          Anmelden zum Antworten
                          • Älteste zuerst
                          • Neuste zuerst
                          • Meiste Stimmen


                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          708

                          Online

                          32.6k

                          Benutzer

                          82.2k

                          Themen

                          1.3m

                          Beiträge
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                          ioBroker Community 2014-2025
                          logo
                          • Anmelden

                          • Du hast noch kein Konto? Registrieren

                          • Anmelden oder registrieren, um zu suchen
                          • Erster Beitrag
                            Letzter Beitrag
                          0
                          • Home
                          • Aktuell
                          • Tags
                          • Ungelesen 0
                          • Kategorien
                          • Unreplied
                          • Beliebt
                          • GitHub
                          • Docu
                          • Hilfe