Page History
...
There is one difference though. In order to be able to send fine-grained updates to the client/browser, those values are 'watched'. That means that whenever you assign a completely new javascript array directly to the property (or if you assign a new object/array into one element of it or nested on any level), that new value (reference) you assign will not be 'watched' directly; you have to take/read it back from the property (which will give you an equivalent 'watched' value) before using it further in code. Or you can access the value of the property directly every time, not kept as a reference.
For example:
Code Block | ||||
---|---|---|---|---|
| ||||
var newPropertyValue = [ 1, 2, 3 ]; // here you assign a new array to the property elements.myCustomComponent.myArrayProperty = newPropertyValue; // here you update the reference that you want to use later in code with the 'watched' new value newPropertyValue = elements.myCustomComponent.myArrayProperty ; (...then later on, maybe during another event handler execution...) // this modification will be detected because it's using the new 'watched' value you got from elements.myCustomComponent.myArrayProperty after it was assigned - and the change will be sent to the browser newPropertyValue[1] = 5; |
Code Block | ||||
---|---|---|---|---|
| ||||
var newPropertyValue = {}; // here you assign a new array to the property elements.myCustomComponent.myArrayProperty = newPropertyValue; (...then later on, maybe during another event handler execution...) // this will modify the value in newPropertyValue but myCustomComponent.myArrayProperty will not be aware of that to send changes to client/browser newPropertyValue[1] = 5; |
...
Overview
Content Tools
Activity