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.2k

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

  • 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
    #3

    @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 %> Должен вывести переменную? у меня ничего не выводится

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

    http://blog.instalator.ru/

    1 Antwort Letzte Antwort
    0
    • 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

                            679

                            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