J'essaie d'apprendre des captures dans Lasso 9, mais j'ai du mal à comprendre comment accéder à la variable locale #1
à partir d'un conditionnel qui est à l'intérieur d'une capture array->forEach
. Peut-être que mon approche est tout faux. Y a-t-il une référence à la capture parentale que je dois utiliser? Voici le code de travail:Comment accéder # 1 à l'intérieur conditionnel array-> forEach
define paramstovars() => {
local(p = web_request->params)
#p->foreach => {
local(i = #1)
if(#i->type == 'pair') => {
var(#i->first->asstring = #i->second->asstring)
}
}
}
Voici le code que je suis en train de se mettre au travail sans compter sur une définition variable locale redondante:
define paramstovars() => {
local(p = web_request->params)
#p->foreach => {
if(#1->type == 'pair') => {
var(#1->first->asstring = #1->second->asstring)
}
}
}
Dans ce deuxième exemple, je reçois une erreur qui La position était hors de portée: 1 max est 0 (code d'erreur -1) sur la ligne appelant var()
.
Problèmes de sécurité évidents avec cette méthode personnalisée mise à part, quel est le moyen le plus efficace de rendre le n ° 1 disponible dans les conditions imbriquées?
Merci pour votre temps et votre aide.
Oublier tout ce que je l'ai déjà écrit! Voir ma prochaine réponse – jolle