Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Entwicklung
  4. Adapter Settings soll weitere Config States hinzufügen

NEWS

  • Wartung am 15.11. – Forum ab 22:00 Uhr nicht erreichbar
    BluefoxB
    Bluefox
    11
    2
    211

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    7.9k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.7k

Adapter Settings soll weitere Config States hinzufügen

Adapter Settings soll weitere Config States hinzufügen

Scheduled Pinned Locked Moved Entwicklung
4 Posts 3 Posters 240 Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Offline
    J Offline
    jlssmt
    wrote on last edited by
    #1

    Hallo zusammen,

    ich habe mich mal an meinen ersten Adapter gewagt.
    Komme von der Angular Front und daher das create-adapter script mit React und Typescript initialisiert.
    Komme gut voran, aber ich habe ein essenzielles Problem.
    Ich würde gerne im Frontend also den Adapter-Einstellungen eine Liste implementieren, welche sich durch einen Klick auf den "+" Button um eine Zeile erweitert.
    Das sieht man ja in so manchen Adaptern, aber leider kann ich dort nicht abschauen, weil dort alles in jQuery o.ä. implementiert wurde.

    Ich hätte gerne so ein Interface für die Settings:

    interface AdapterConfig {
      option1: boolean;
      items: [
        {
          productName: string;
          url: string;
          keyword: string;
        }
      ]
    }
    

    Und dann eben pro Zeile ein this.config.items.push(newItem); bzw. halt direkt einen bind vom input value auf die config.

    Leider bekomme ich das nicht hin, da im Template das hier vorgegeben ist:

    <TextField value={this.props.native[attr]}>...</TextField>
    

    Ich frage mich wie ich jetzt das items array in meine adapter.config bekomme, damit es als "setting" dauerhaft bestehen bleibt.
    Ist das so grob verständlich? Ich denke ich brauch nur ne kleine Hilfe.

    Adapter bzw. settings.tsx file ist hier: https://github.com/jlssmt/ioBroker.product-alert/blob/master/admin/src/components/settings.tsx

    UncleSamU AlCalzoneA 2 Replies Last reply
    0
    • J jlssmt

      Hallo zusammen,

      ich habe mich mal an meinen ersten Adapter gewagt.
      Komme von der Angular Front und daher das create-adapter script mit React und Typescript initialisiert.
      Komme gut voran, aber ich habe ein essenzielles Problem.
      Ich würde gerne im Frontend also den Adapter-Einstellungen eine Liste implementieren, welche sich durch einen Klick auf den "+" Button um eine Zeile erweitert.
      Das sieht man ja in so manchen Adaptern, aber leider kann ich dort nicht abschauen, weil dort alles in jQuery o.ä. implementiert wurde.

      Ich hätte gerne so ein Interface für die Settings:

      interface AdapterConfig {
        option1: boolean;
        items: [
          {
            productName: string;
            url: string;
            keyword: string;
          }
        ]
      }
      

      Und dann eben pro Zeile ein this.config.items.push(newItem); bzw. halt direkt einen bind vom input value auf die config.

      Leider bekomme ich das nicht hin, da im Template das hier vorgegeben ist:

      <TextField value={this.props.native[attr]}>...</TextField>
      

      Ich frage mich wie ich jetzt das items array in meine adapter.config bekomme, damit es als "setting" dauerhaft bestehen bleibt.
      Ist das so grob verständlich? Ich denke ich brauch nur ne kleine Hilfe.

      Adapter bzw. settings.tsx file ist hier: https://github.com/jlssmt/ioBroker.product-alert/blob/master/admin/src/components/settings.tsx

      UncleSamU Offline
      UncleSamU Offline
      UncleSam
      Developer
      wrote on last edited by
      #2

      @jlssmt Ich bin leider auf dem Handy und kann dir nicht alle Details schreiben, aber schau dir mal meinen Adapter an, dort mache ich genau das:
      https://github.com/UncleSamSwiss/ioBroker.i2c/tree/master/admin/src

      Es gibt mehrere Devices und die werden durch die Antwort von sendTo hinzugefügt.

      Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
      ♡-lichen Dank an meine Sponsoren

      1 Reply Last reply
      0
      • J jlssmt

        Hallo zusammen,

        ich habe mich mal an meinen ersten Adapter gewagt.
        Komme von der Angular Front und daher das create-adapter script mit React und Typescript initialisiert.
        Komme gut voran, aber ich habe ein essenzielles Problem.
        Ich würde gerne im Frontend also den Adapter-Einstellungen eine Liste implementieren, welche sich durch einen Klick auf den "+" Button um eine Zeile erweitert.
        Das sieht man ja in so manchen Adaptern, aber leider kann ich dort nicht abschauen, weil dort alles in jQuery o.ä. implementiert wurde.

        Ich hätte gerne so ein Interface für die Settings:

        interface AdapterConfig {
          option1: boolean;
          items: [
            {
              productName: string;
              url: string;
              keyword: string;
            }
          ]
        }
        

        Und dann eben pro Zeile ein this.config.items.push(newItem); bzw. halt direkt einen bind vom input value auf die config.

        Leider bekomme ich das nicht hin, da im Template das hier vorgegeben ist:

        <TextField value={this.props.native[attr]}>...</TextField>
        

        Ich frage mich wie ich jetzt das items array in meine adapter.config bekomme, damit es als "setting" dauerhaft bestehen bleibt.
        Ist das so grob verständlich? Ich denke ich brauch nur ne kleine Hilfe.

        Adapter bzw. settings.tsx file ist hier: https://github.com/jlssmt/ioBroker.product-alert/blob/master/admin/src/components/settings.tsx

        AlCalzoneA Offline
        AlCalzoneA Offline
        AlCalzone
        Developer
        wrote on last edited by
        #3

        @jlssmt Dein Anwendungsfall ist etwas komplizierter als die vorgegebenen Standardfälle.

        Im Grunde brauchst du eine extra Component für die Items, die statt dem TextField für jedes Item gerendert wird (musst du schreiben). Und in dieser Component dann eben 3 Textfelder, die du an productName, url und keyword des jeweiligen Items bindest.

        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

        J 1 Reply Last reply
        0
        • AlCalzoneA AlCalzone

          @jlssmt Dein Anwendungsfall ist etwas komplizierter als die vorgegebenen Standardfälle.

          Im Grunde brauchst du eine extra Component für die Items, die statt dem TextField für jedes Item gerendert wird (musst du schreiben). Und in dieser Component dann eben 3 Textfelder, die du an productName, url und keyword des jeweiligen Items bindest.

          J Offline
          J Offline
          jlssmt
          wrote on last edited by jlssmt
          #4

          @UncleSam
          Hat mir sehr geholfen, danke dir 😉

          @alcalzone
          Danke, bin jetzt schon weitergekommen.
          Das "any" bei onChange: (attr: string, value: any) => void; hatte ich übersehen.
          Damit kann ich mir ein Object[] in die config schieben 😉

          1 Reply Last reply
          0
          Reply
          • Reply as topic
          Log in to reply
          • Oldest to Newest
          • Newest to Oldest
          • Most Votes


          Support us

          ioBroker
          Community Adapters
          Donate

          81

          Online

          32.4k

          Users

          81.3k

          Topics

          1.3m

          Posts
          Community
          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
          ioBroker Community 2014-2025
          logo
          • Login

          • Don't have an account? Register

          • Login or register to search.
          • First post
            Last post
          0
          • Recent
          • Tags
          • Unread 0
          • Categories
          • Unreplied
          • Popular
          • GitHub
          • Docu
          • Hilfe