@@ -37,6 +37,9 @@ local function parseExpression(expr, element, propName)
3737 if protectedNames [obj ] then
3838 return obj .. " ." .. prop
3939 end
40+ if tonumber (obj ) then
41+ return obj .. " ." .. prop
42+ end
4043 return string.format (' __getProperty("%s", "%s")' , obj , prop )
4144 end )
4245
@@ -52,6 +55,9 @@ local function parseExpression(expr, element, propName)
5255 return element .parent :getState (prop )
5356 end ,
5457 __getElementState = function (objName , prop )
58+ if tonumber (objName ) then
59+ return nil
60+ end
5561 local target = element :getBaseFrame ():getChild (objName )
5662 if not target then
5763 errorManager .header = " Reactive evaluation error"
@@ -61,6 +67,9 @@ local function parseExpression(expr, element, propName)
6167 return target :getState (prop ).value
6268 end ,
6369 __getProperty = function (objName , propName )
70+ if tonumber (objName ) then
71+ return nil
72+ end
6473 if objName == " self" then
6574 return element .get (propName )
6675 elseif objName == " parent" then
@@ -105,11 +114,13 @@ local function validateReferences(expr, element)
105114 return false
106115 end
107116 else
108- local target = element .parent :getChild (ref )
109- if not target then
110- errorManager .header = " Reactive evaluation error"
111- errorManager .error (" Referenced element not found: " .. ref )
112- return false
117+ if (tonumber (ref ) == nil )then
118+ local target = element .parent :getChild (ref )
119+ if not target then
120+ errorManager .header = " Reactive evaluation error"
121+ errorManager .error (" Referenced element not found: " .. ref )
122+ return false
123+ end
113124 end
114125 end
115126 end
0 commit comments