@@ -37,6 +37,9 @@ local function parseExpression(expr, element, propName)
37
37
if protectedNames [obj ] then
38
38
return obj .. " ." .. prop
39
39
end
40
+ if tonumber (obj ) then
41
+ return obj .. " ." .. prop
42
+ end
40
43
return string.format (' __getProperty("%s", "%s")' , obj , prop )
41
44
end )
42
45
@@ -52,6 +55,9 @@ local function parseExpression(expr, element, propName)
52
55
return element .parent :getState (prop )
53
56
end ,
54
57
__getElementState = function (objName , prop )
58
+ if tonumber (objName ) then
59
+ return nil
60
+ end
55
61
local target = element :getBaseFrame ():getChild (objName )
56
62
if not target then
57
63
errorManager .header = " Reactive evaluation error"
@@ -61,6 +67,9 @@ local function parseExpression(expr, element, propName)
61
67
return target :getState (prop ).value
62
68
end ,
63
69
__getProperty = function (objName , propName )
70
+ if tonumber (objName ) then
71
+ return nil
72
+ end
64
73
if objName == " self" then
65
74
return element .get (propName )
66
75
elseif objName == " parent" then
@@ -105,11 +114,13 @@ local function validateReferences(expr, element)
105
114
return false
106
115
end
107
116
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
113
124
end
114
125
end
115
126
end
0 commit comments