Ich checke nicht was ich falsch mache

Posted by: LiveSafe

Ich checke nicht was ich falsch mache - 21.01.2023, 11:17:43

Moinse, ich würde gerne von meiner youtube.html die VIDEO ID an meine lmc.html senden. Leider bekomme ich es nicht hin.

Was ich falsch mache? Ich weiß es nicht.


Die Benötigten Dateien sind:

https://github.com/LRDEAlex/NicisSpassApp

zu finden.

Ich wäre dankbar, wenn man helfen würde. Es ist klar, dass der Code von der Umfrage nicht zu stehlen sind.

Danke
Posted by: LiveSafe

Re: Ich checke nicht was ich falsch mache - 21.01.2023, 11:34:04

https://github.com/LRDEAlex/NicisSpassApp

hier ist der Code, allerdings nur weil der nun dort ist, heißt klau ihn dir oder so ne :D
Posted by: root

Re: Ich checke nicht was ich falsch mache - 21.01.2023, 11:36:32

Ich habe mir deinen Code jetzt nicht im Detail angesehen, da deine Main etwas länger, an einigen Stellen redudant und unübersichtlich ist (würde einige Funktionen auslagern und objektorientiert vorgehen). Viele deiner Funktionen werden offenbar nur einmal verwendet. Hier würde ich das mit Lambda-Ausdrücken und anonymen Funktionen verbessern. Ich merke das nur an, weil man deinen Code lieber und schneller liest und dir auch so schneller auf deinen Code basierend helfen kann.

Zum eigentlichen Problem: Das Ganze muss natürlich als Event von A nach B geschickt werden. Für den Weg von A nach B gibt es mehrere Möglichkeiten. Am einfachsten löst du das mit der Knuddels API, in dem du das Event aus deinem HTML Dokument 1 an deine main-Datei sendest und von dort aus an das HTML Dokument 2 weiterleitest. Deine ersten beiden Links konnte ich nicht aufrufen.
Posted by: LiveSafe

Re: Ich checke nicht was ich falsch mache - 21.01.2023, 11:39:17

Ich habe den Code auf Github gelegt, ja dass der Code aufgeräumt werden muss weiß ich, aber da bin ich noch nicht so weit, weil ich nicht genau weiß wie es geht ;/ Wegen auslagern und so
Posted by: root

Re: Ich checke nicht was ich falsch mache - 21.01.2023, 11:48:07

Schau immer mal in die Doku der Knuddels API. Die Methoden, die du brauchst, sind in den Klassen Client und AppContentSession. Du musst die Session als Objekt instanziieren und an diese das Event senden. Laut Schnittstellenbeschreibung werden als Parameter ein Objekt für die Daten und ein String für den Key (das Zugriffswort) gefordert.

Zum Auslagern:
Da gibt es zwei Wege. Zunächst einmal solltest du ein Verzeichnis in deiner App für die ausgelagerten Quellcodedateien anlegen. Diese kannst du dann mit require(pfad) dauerhaft in deine App einbinden. Alternativ bietet die Klasse KnuddelsServer die Methode execute an, der du ebenfalls nur den Pfad zu deinem Skript übergeben musst.

Ich würde dir raten, dich an die Arbeit mit der Knuddels API zu gewöhnen und um dir stundenlanges Recherchieren zu ersparen, dich mit den prozeduralen und objektorientierten Aspekten von JavaScript zu befassen. Ansonsten entsteht auf kurz oder lang Spaghetticode und wenn du den nach einem Jahr wieder lesen willst, dann wirst du feststellen, dass das sehr lange dauert. Soll heißen: Du verstehst dann deine eigene App nicht mehr wirklich.
Posted by: LiveSafe

Re: Ich checke nicht was ich falsch mache - 21.01.2023, 12:06:03

Ist nicht so dass ich nicht die KnuddelsAPI nutzen würde.

Das mit dem auslagern schaue ich mir noch mal an. Mache das nur nebenbei, bin kein Profi :)

Zum eigentlichen Problem ich muss also die VideoID von youtube.html an die Main (oder Auslagerung) senden und von da aus an die lmc.hmtl.
Von HTML an js sollte ich hinbekommen aber wie ich von js an HTML sende weiß ich nicht. Weil ich es noch nie gemacht habe. Da wäre ich für nen kleinen Tipp dankbar, und ja ich weiß KnuddelsAPI
Posted by: root

Re: Ich checke nicht was ich falsch mache - 21.01.2023, 12:15:10

Code:
/**
 * Ausgangssituation: Für den Nutzer ist ein AppContent geöffnet.
 * Die Sitzung dazu wollen wir haben. Beispiel: Popup
 * Lt. API Doku bekommen wir die Session über eine Methode der Klasse User.
 * An diese Session senden wir ein Event mit einem String als Schlüsselwort 
 * und einem Objekt, das die Daten enthält.
 * Das Event muss nur noch im HTML Dokument mit Client.addEventListener() abgefangen werden.
 * Siehe dazu die Klasse Client.
 */
user.getAppContentSession(AppViewMode.Popup)
	.sendEvent(
	"Zauberwort",
	{ integer: 100, double: 0.8289292373873, string: "Hallo" }
);


Alternativ:
Code:
var pageData = htmlFile.getPageData(pfad, daten);


Du könntest auch direkt das neue Dokument mit den Daten des vorherigen öffnen, je nachdem, wie du es eben brauchst. Fiel mir gerade ein, habe hier länger nicht mehr entwickelt. Wäre vielleicht die für dich interessanteste Lösung.
Posted by: LiveSafe

Re: Ich checke nicht was ich falsch mache - 21.01.2023, 12:22:41

Dann muss ich trz ja iwie die Daten aus dem Formular auslesen und in die neue Datei implementieren, kommt das dem jetzigen nicht gleich?
Posted by: root

Re: Ich checke nicht was ich falsch mache - 21.01.2023, 12:28:46

Sonst schreib mir mal im Chat, bin online. Geht schneller, denke ich.
Posted by: LiveSafe

Re: Ich checke nicht was ich falsch mache - 21.01.2023, 12:34:31

Darf dir leider nicht schreiben, Filter und so bin mit VerboteneTräume online
Posted by: LiveSafe

Re: Ich checke nicht was ich falsch mache - 29.01.2023, 12:01:23

Das Thema bitte löschen ;)
Posted by: LiveSafe

Re: Ich checke nicht was ich falsch mache - 03.02.2023, 12:12:55

Ich bitte ERNEUT darum, dass dieser Thread BITTE gelöscht wird! Im Chat hatte ich Misterious bereits darum gebeten, leider ohne Reaktion darauf. Schade
Posted by: Professor James Moriarty

Re: Ich checke nicht was ich falsch mache - 03.02.2023, 12:23:48

Antwort auf: LiveSafe
Ich bitte ERNEUT darum, dass dieser Thread BITTE gelöscht wird! Im Chat hatte ich Misterious bereits darum gebeten, leider ohne Reaktion darauf. Schade


Threads werden nicht gelöscht, wenn überhaupt geschlossen.
Posted by: root

Re: Ich checke nicht was ich falsch mache - 03.02.2023, 14:16:50

Wäre doch etwas unfair, wenn er gelöscht wird. Vielleicht hat jemand anderes ein vergleichbares Problem.