How the negative 'undefined' works in PolymerJS 2

23 Sep 2017

Here's the proof of concept: https://jsfiddle.net/1gqpe1bu/.

In summary, a negative condition in PolymerJS 2 have 3 states: true, false, and undefined.

[[undefined]] and [[!undefined]] are both evaluated as false.

This causes a weird confusion when using dom-if and hidden.