Weird bug(?) with components


#1

Hi,

I had this weird thing happening in my app, so I investigated and created the simplest ember-twiddle I could to reproduce this.

https://ember-twiddle.com/f753937c55332c2f49372c61fea81e0c

In short: Can you explain why there are A’s in the string and not only B’s???

Basically I have two components A and B. A renders B and passes it a ‘counter’ and field1 with an initial value (“A”). The counter is incrementing every second.

Component B is observing the counter and setting field1 to “B” upon a change in counter. The component also observes the property ‘field1’ and logs it value.

For some reason you can see the value of ‘field1’ is reverting to ‘A’ each time I try to set it to ‘B’

Is that normal??


#2

Just a guess, but everytime you change the value the component is rerendered to reflect the new value isn’t it, which means the helper setting it to A again will be firing the logger because you are observing on init?


#3

Thanks! That is probably it!

I added an “didRender” function and it is being called every time.

I did not expect the field1 value to be initialized every time… I learn new things about Ember every day… wow