こんにちは、ダチョウです。
今回は備忘録として、vue3のdata-tableのsortのデフォルトはtrueなのか、falseなのか、を記したいと思います。
結論から言うと、sortはtrue。自動でsortしてくれます。
これ、「まぁ困ったらsort:trueって書けばいいし、なんなら少し書けばtrueってわかるじゃん」って話なんですが、根本から考えないといけないと思ってまとめてみました。
1,公式はまとめてない
readonly sortable?: boolean | undefined
vue3の公式にはこうあり、sortがデフォルトでどっちやねん、というのは公式では明らかにしてないんです。booleanね、ないならundefinedだよ、と。これは型定義ですね。
2,デフォルト問題、gitで討論してました
gitで話しているサイト
このサイトで、「試したけどデフォルトってtrueだよね、でも誰もそのこと言ってないよね?」と。
それの回答が下記です。
3, 説明してないだけで一応定義はしてるっぽい
sortable: defaultItem.sortable ?? (defaultItem.key != null || !!defaultItem.sort)
上記のコードを読みとくと、つまり、
keyまたはsortプロパティが設定されている場合...sortableはデフォルトでtrueとなり、カラムはsortが可能。
keyやsortプロパティが設定されていない場合...sortableはデフォルトでfalseとなり、カラムはsortが不可。
すごく簡単にまとめると、sortを気にしなくても、sortを設定したら、勝手にkeyから判別して勝手にsortしてくれるらしいです。すごい機能ですよね。
今まで、sort? trueって書けばいいじゃん、とか安易に考えていましたが、裏ではいろいろ考えられているんですね。
こういうのを備忘録として一つ一つ丁寧に書いていきたいです。
ps.文章が見にくいと思います。自分もそう思ってます。初心者なので許してください
今後よくしていくので精進していきます。
s