カテゴリー : Jade

[Jade] mixin の命名規則

Jade には mixin という template を module 化する機能があります。

+hoge(arg) みたいな感じで method ライクに template を呼び出せるのですが、method みたいなだけあって命名規則はどうなってるんだろうと思って軽く調べてみました。

下記は、Jade のサンプルコードです。

mixin dialog-title(title)
  .dialog
    h1= title
    p stuff

snake_case, lowerCamelCase のいずれかでもなく、ハイフンを区切り文字として使っており dialog-title と定義されていました。

ついでに .jade ファイルについても見てみましょう。

extend-layout.jade とあるようにファイル名についてもハイフンが区切り文字として使われていました。

Jade の mixin をハイフン区切りにしておくと、JavaScript の method の命名規則と衝突しないので grep しやすくて良い感じになりそうですね。

[Jade] partial is deprecated

Jade の最新版だと partial は廃止されてます。

partial 使ってもコードはレンダリングされない

extends layout
 
block content
  h1 Invoices:
  != partial("invoice")

Jade newest version doesn’t support partials. You might be following outdated tutorials. Please read up on jade documentation here

partial 使えないので mixin 使いましょう。


参考情報

node.js – Partial Not Defined in Jade – Stack Overflow

[Jade] each で要素だけでなく index も取得する

テンプレートエンジン Jade の each で現在のループ回数 index を取得する方法をメモ。

each item, index in list
  li= item
  if index === 1
    | : First item in list!

参考情報

node.js – Jade template engine – Each Iteration Offset – Stack Overflow