はじめに
Leafテンプレートの構文までも変わっていましたか……
Vapor3からVapor4へのバージョンアップに併せて変わったようですね。後々のために前バージョンとの違いをまとめておきます。
今回は小ネタチックな感じです。しかしながら、(これを書いた時点で)Vapor4の公式ドキュメントに見当たらなかった項目なので、引っかかってからしばらく抜け出せませんでした。
Vapor3からVapor4への変更点は?
ループの書き方が変わった
Vapor3までは中カッコで括っていました。SwiftやC#な書き方ですね。
これが、endfor
で閉じるようになりました。VisualBasicのような書き方ですね。
書き方がSwiftから離れてしまったような感じがします。なぜ変えてしまったのか……
条件分岐の書き方が変わった
if文も変わってしまいました。forと同様に閉じるための宣言が必要になってしまいました。
Vapor4ではVisualBasic的な書き方です。個人的な好みですがVapor3の時のほうが良いな。
コメントが効かない
Vapor3でのLeafテンプレートコメントの書き方をVapor4のLeafテンプレートで使うと、認識されませんでした。
なんとそのまま表示されてしまいます。これはびっくり。なんてこったい……
Vapor3までは公式ドキュメントにLeafテンプレートでのコメントの書き方が載っているのですが、Vapor4の公式ドキュメントには記載がありませんでした。そもそもLeafに関する記述が無い。
コメントアウトができないと、デバッグの時など地味に困ります。
コメントアウトに関する話題が出ているようですので、そのうち実装されるでしょう。
どうすりゃいいのよ!というところですが、当面はバージョン管理で仮のブランチを切って書き換えて、うまく行ったら適宜マージするような運用になりそうです。少々大掛かりですが。
まとめ
Swiftと構文が似ていた前のほうがよかったというのが個人的感想です。#で始まるカスタムタグに統一したかったんでしょうね。
メインバージョンが上がるとさすがに変わり方が激しいです。
Vapor4フレームワークはこれからこなれていくでしょうし、気長に対応していきましょう。
コメントアウトについては経過観察ですね。