NEWS
Typescript (Adapter-Creator) Setup / Readme Unklarheiten
-
Guten Tag,
Ich habe leider folgendes Problem:
Ich habe mit dem Adapter Creator ein neuen Adapter erstellt, wobei ich beim Setup Typescript ausgewählt habe. Dann habe ich mit den von der README (https://github.com/ioBroker/ioBroker.example/tree/master/TypeScript) vorgegebenen Schritten zum Testen auf einer lokalen Installation den Adapter hochgeladen. Dabei ist mir aufgefallen, dass danach in /opt/iobroker/node_modules/iobroker.template nicht die Dateien vorhanden sind die in meiner Dev-Directory vorhanden sind. Konkret fehlt in /opt/... der "src" Ordner mit den Typescript Dateien. Das nicht alle Dateien benötigt werden habe ich bei Tests mit der JS-Variante des Adapter-Creator erstellten Templates gesehen. Es stellt sich jedoch mir hierbei die Frage wie ich Änderungen in meiner Dev-Directory an meinem Adapter austeste, wenn der komplette "src" Ordner mit meinen .ts Dateien fehlt. Ich könnte ihn zwar manuell einfügen, jedoch denke ich mal macht dies keinen Unterschied solange nicht zB. in der main.js auf die main.ts verwiesen wird. Gerade weil bei "package.json" und "io-package.json" in beiden Fällen "build/main.js" anstatt "src/main.ts" für das Attribut "main" gesetzt sind.
Werden meine Änderungen in der main.ts somit ignoriert? Muss ich sie irgendwie manuell einflegen? Reicht es vllt. einfach das "main" Attribut bei der package.json und io-package.json zu "src/main.ts" zu ändern und den "src" Ordner immer mitzukopieren/mitzuändern bei späteren Updates mit dem "iobroker upload template" Befehl?
Bei Bildern und ähnliches weiß ich, dass ich die teilweise selber kopieren und einpflegen muss, jedoch macht mir die Existenz von zwei "main" Dateien (main.js/main.ts) hierbei doch Probleme. Vor allem weil beide fasst den gleichen Code besitzen, nur auf die jeweilige Sprache angepasst und die main.js hat 3 Variablen mehr.
Jegliche Hilfe wäre sehr willkommen!
MfG Valentin
-
@schneidva In
src
sind die Quelldateien, die durch Ausführen vonnpm run build
bzw.npm run build:ts
zunächst in JavaScript übersetzt werden müssen, bevor sie ausgeführt werden können. Das Resultat davon findest du imbuild
-Ordner. Dersrc
-Ordner hat außerhalb deines Entwicklungs-Repositories nix zu suchen.Am Einfachsten lässt sich ein Adapter mmn. mit https://github.com/ioBroker/dev-server entwickeln und testen. Damit bekommst du auf deinem Entwicklungs-PC lokal eine frische ioBroker-Installation, in der nur dein Adapter läuft und du nix kaputt machen kannst. Wenn du den mit
dev-server watch
ausführst, wird auch automatisch bei jeder Änderung der Adapter kompiliert und neu gestartet. -
@alcalzone Vielen dank für die Antwort! Ich werd das mal austesten.