Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Funktionen unter Global werden nicht gefunden

    NEWS

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    Funktionen unter Global werden nicht gefunden

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      derrapf last edited by derrapf

      Hallo alle
      Ich dachte bzw. habe gelesen, dass Funktonen die reusable sein sollen unter "global" abgelegt werden sollen.
      Das hab ich gemacht in dem ich ein Script "Utils" unter global abgelegt habe:
      3a3ef771-0e46-45b4-a472-01a1bc7f2e33-grafik.png
      Dort enthalten ist z.B. die Funktion "saySomething"

      Wie man aber hier sieht, scheint der Editor diese nicht zu kennen:
      64019b10-306b-4cb7-bc2a-4ea2473dbc66-grafik.png

      Auch nicht das array timer[] das in Utils definiert ist.

      Hab ich da was falsch verstanden?
      Wenn ja: Wie definiert man globale Variablen, bzw. reusable Funktionen?

      Gruss Ralf

      AlCalzone 1 Reply Last reply Reply Quote 0
      • Dutchman
        Dutchman Developer Most Active Administrators last edited by

        Wen es dir nur um die Variable geht Benutzer besser Staates dafür.

        Globale scripte werden an allen Scripte angehängt, für global definierte Funktionen macht das Sinn aber nicht zur Werte Übergabe dafür haben wir states

        D 1 Reply Last reply Reply Quote 0
        • AlCalzone
          AlCalzone Developer @derrapf last edited by

          @derrapf sagte in Funktionen unter Global werden nicht gefunden:

          Auch nicht das array timer[] das in Utils definiert ist.
          Hab ich da was falsch verstanden?
          Wenn ja: Wie definiert man globale Variablen, bzw. reusable Funktionen?

          Die Methoden existieren und können verwendet werden, auch wenn der Editor was anderes behauptet.
          Eigentlich sollte er das erkennen. Es könnte aber sein, dass diese Funktionialität beim Umbau auf die neue Oberfläche verloren gegangen ist.

          1 Reply Last reply Reply Quote 0
          • D
            derrapf @Dutchman last edited by

            @Dutchman sagte in Funktionen unter Global werden nicht gefunden:

            Wen es dir nur um die Variable geht Benutzer besser Staates dafür.

            Du meinst ich soll echte Datenpunte dafür anlegen?
            Das ist ein Array aus Strings. Wie würde man das machen? Hab jetzt keine Idee. Werteliste? Aber die müsste dynamisch erweiterbar sein...

            Ich probiert mal aus ob das tatsächlich nur der Editor ist der die globalen Scrpts nicht versteht.
            Gruss Ralf

            AlCalzone 1 Reply Last reply Reply Quote 0
            • AlCalzone
              AlCalzone Developer @derrapf last edited by

              @derrapf sagte in Funktionen unter Global werden nicht gefunden:

              Das ist ein Array aus Strings. Wie würde man das machen? Hab jetzt keine Idee. Werteliste?

              Du kannst per Skript Datenpunkte anlegen, die einen type: "array" haben. Der Wert des DPs ist dann ein Array, das du lesen, modifizieren und wieder speichern kannst.

              D 1 Reply Last reply Reply Quote 0
              • D
                derrapf @AlCalzone last edited by derrapf

                @AlCalzone
                Ah Ok.

                Also im Prinzip so?:

                createState(timer,  {
                     name: 'timer Array',
                     SmartName: 'timer Array',
                     desc: 'timer Array für say it',
                     type: 'array',
                     unit: '',
                     role: 'value'
                });
                

                Und wie greift man darauf zu bzw. beschreibt die Variable?
                Sowas
                getState(timer[0]).val) oder
                setState(timer[0]), "test"),
                geht nicht
                Gruss Ralf

                1 Reply Last reply Reply Quote 0
                • First post
                  Last post

                Support us

                ioBroker
                Community Adapters
                Donate

                854
                Online

                32.0k
                Users

                80.5k
                Topics

                1.3m
                Posts

                3
                6
                472
                Loading More Posts
                • Oldest to Newest
                • Newest to Oldest
                • Most Votes
                Reply
                • Reply as topic
                Log in to reply
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                The ioBroker Community 2014-2023
                logo