Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Kein Rückgabewert aus Funktion
#1
Hi@all

Code:
    // Skill Auswahl
    SkillArray = thisUserSkills.split(";");
    let text = 'Aus welchem Skill sollen Tickets zugewiesen werden?<br>';
    for (let i = 0; i < SkillArray.length; i++) {
        viewId    = SkillArray[i];
        initViews(viewId);
        console.log(viewName); // thats undefined
        text = text + '<br><div class="btn" onclick="changeView(\'' + viewId + '\', \'' + viewName + '\')" style="display:block;">' + viewId + ' - ' + viewName + '</div>';
    }
    document.getElementById('text01').innerHTML = text;

    // Init Views of View-ID an give Name of List
    function initViews(viewId) {
        let requestView = { type: 'GET', url: '/api/v2/views/' + viewId }

        client.request(requestView).then(function(data) {
                viewsData = data;
                viewName = data.view['title'];
                //console.log(viewName); // thats OK
            });
    }

Ich bekomme den Rückgabewert nicht übergeben initViews()

Thx@all
Zitieren
#2
Hallo Prominenter,
<viewsName> sollte eigentlich eine globale Variable sein, da sie (in diesem Codeausschnitt) nicht lokal definiert ist. Ich hatte mal ein ähnliches Problem und da hat es geholfen sie trotzdem am Scriptanfang global zu deklarieren. Würde ich zumindest mal ausprobieren.
Zitieren
#3
oder mal return probieren


return viewName;
Hier sind alle meine Lösungen aus allen Foren. Ich helfe auch in Facebook-chat
Zitieren
#4
Hi Prominenter,
einen Tipp könnte ich dir noch mitgeben. Verwende Template literals. Mit Template liberals kannst du besser und schneller Strings schreiben und es sieht sauberer aus.

Hier ein kleines Beispiel dazu von mir:
Code:
// Original
text = text + '<br><div class="btn" onclick="changeView(\'' + viewId + '\', \'' + viewName + '\')" style="display:block;">' + viewId + ' - ' + viewName + '</div>';
// Verbesserte Variante
text += `<br><div class="btn" onclick="changeView('${viewId}','${viewName}')" style="display: block;" ${viewId} - ${viewName}</div>`;

Gerne kannst du in zukunft die verbesserte Variante anwenden. Das macht das Coden leichter.

Viel Erfolg

rzscout
"Gerne dürft ihr mir eine gute Bewertung da lassen aber auch gegenüber Kritik bin ich offen" Angel
Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen:
1 Gast/Gäste