Not sure I understand your 3rd pattern, what does
const {LoginForm} = this; do?
var o = {p: 42, q: true};
var {p, q} = o;
console.log(p); // 42
console.log(q); // true<component /> compiles to React.createElement('component') (html tag)
<Component /> compiles to React.createElement(Component)
<obj.component /> compiles to React.createElement(obj.component)