next.jsのチュートリアルをやっていてたら、propsのvalue値を省略して書いてあるところがあった。
「そんなことができるのか!?」
「next.jsの仕様なのか!?」
と思って調べてみたところreactの公式にありました。
propのvalueを省略した場合、trueになるようです。以下の2つは同じことを意味してます。
<MyTextBox autocomplete />
<MyTextBox autocomplete={true} />
公式的には、省略することは非推奨。
理由は、es6のオブジェクトのvalueの省略に見えてしまうため混乱するから。
{foo}って書いてあったら、{foo: true}よりも{foo: foo}を普通はイメージするよね!
ってことらしい。