Ich habe Probleme mit dem Variablenbereich. Der folgende Code ist in Protractor, eine Mischung aus Jasmin und JavaScript. Das Problem, das ich habe, ist, dass ich versuche, Zeichenfolge Wert von householdLabelText
zu verwenden und es mit dem Wert householdArray[i]
zu vergleichen.Versprechen, .then() Variable sagt undefined
Immer, wenn ich dies tue, kommt householdArray[i]
als undefined zurück. Ich vermute, das liegt daran, householdArray
geht aus dem Geltungsbereich oder etwas. Ich bin nicht gerade ein Experte, wie die Promise/Callback-Sache funktioniert, also kann ich mich irren. Wenn jemand mir Tipps geben könnte, wie man householdArray
in Reichweite hält, würde ich es begrüßen.
it((testNumber += 1) + '---' + suiteName + '---' +
'It should dispaly the appropraite text for the rating factors.',
function() {
var householdArray = ['ACCIDENTS', 'VIOLATIONS', 'DRIVERS', 'VEHICLES', 'TENURE'];
element.all(by.repeater('item in vm.policyDetails.householdDetails')).then(function(householdDetails) {
for(var i = 0; i < householdDetails.length; i++)
{
householdDetails[i].element(by.binding('item.label')).getText().then(function(householdLabelText) {
console.log(householdArray[i]);
expect(householdLabelText).toEqual(householdArray[i]); // householdArray[i] is undefined
});
}
});
});
Ich stimme zu, diese Frage als Off-Topic zu schließen, weil Sie lernen müssen, wie Sie den Schritt-Debugger verwenden, der Schritt-Debugger ist Ihr Freund! –
Können Sie ein Beispiel ([codepen] (codepen.io)) Ihres Codes posten, der das Problem verursacht? – Trevor
@JarrodRoberson Ich habe keine IDE oder eine Möglichkeit, einen Schritt-Debugger zu verwenden. Wenn Sie mir einen Schritt-Debugger für den Winkelmesser empfehlen können, dann benutze ich ihn. – DrZoo