This might be a bug, or perhaps as designed (in which case docs could be updated to warn of this behaviour).
I'm seeing a case whereby if you use a runInMillis within the child's context of an Apps componentMethods (ie componentOn) then the optional data: "value" passed to the runInMillis method is set to null... the same example works fine in a Driver parent/child context.
An example code snippet...
def componentOn(cd) {
def value = 1000
runInMillis(500, 'delayedMethod',[data: value])
}
def delayedMethod(value) {
_debug(value) // << this is null
}
Thank you Mike - I'm now unable to reproduce the bug myself either
Very annoying as I played around with this for hours and hours, but didn't go as far as writing a test app... so I've lost the scenario that wasn't working. Your effort here has me going back to the approach I used before that required the use of runInMillis, and now it works ... so not sure what caused the loss of data being sent to the method... must of been something I missed.
Apologies but thanks again for persisting and looking into it...
I'll try not and cry wolf in future and have test cases for quirky bugs like this.