This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

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

    // 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.
Als Lösung markieren Zitieren
#3
oder mal return probieren


return viewName;
Hier sind alle meine Lösungen aus allen Foren. Ich helfe auch in Facebook-chat
Als Lösung markieren 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:
// 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
Als Lösung markieren Zitieren


Gehe zu:


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