0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Jade(Pug)の記述方法

Posted at

Jade(Pug)の記述方法

Jade(現在はPug)はインデントを使用してHTMLを簡潔に記述できるテンプレートエンジンです。以下は基本的な記述例と、さまざまなHTML要素の書き方です。


基本構文

HTMLタグの書き方

doctype html
html
  head
    title My Website
  body
    h1 Hello World
    p This is a paragraph.

結果

<!DOCTYPE html>
<html>
  <head>
    <title>My Website</title>
  </head>
  <body>
    <h1>Hello World</h1>
    <p>This is a paragraph.</p>
  </body>
</html>

属性の指定

属性の記述方法

a(href='https://example.com' target='_blank') Visit Example

結果

<a href="https://example.com" target="_blank">Visit Example</a>

クラスとIDの指定

クラスとIDを簡潔に指定

div#main.container
  h1.title Page Title
  p.subtitle Welcome to my page!

結果

<div id="main" class="container">
  <h1 class="title">Page Title</h1>
  <p class="subtitle">Welcome to my page!</p>
</div>

ループと条件分岐

ループ

ul
  each item in ['Apple', 'Banana', 'Cherry']
    li= item

結果

<ul>
  <li>Apple</li>
  <li>Banana</li>
  <li>Cherry</li>
</ul>

条件分岐

if user
  p Welcome back, #{user.name}!
else
  p Please log in.

結果

ユーザーが存在する場合:

<p>Welcome back, John!</p>

ユーザーが存在しない場合:

<p>Please log in.</p>

ネスト構造

子要素をインデントで記述

ul
  li Item 1
    ul
      li Sub-item 1.1
      li Sub-item 1.2
  li Item 2

結果

<ul>
  <li>Item 1
    <ul>
      <li>Sub-item 1.1</li>
      <li>Sub-item 1.2</li>
    </ul>
  </li>
  <li>Item 2</li>
</ul>

テキストと変数の組み合わせ

変数の埋め込み

p Hello, #{username}!

結果

<p>Hello, John!</p>

フォームの記述

基本的なフォーム

form(action='/submit' method='post')
  label(for='name') Name:
  input#name(type='text' name='name')
  button(type='submit') Submit

結果

<form action="/submit" method="post">
  <label for="name">Name:</label>
  <input id="name" type="text" name="name">
  <button type="submit">Submit</button>
</form>

コメント

HTMLコメント

// This is a comment

出力されるHTML

<!-- This is a comment -->

Jade内でのコメント(HTMLに出力されない)

//- This comment will not appear in the HTML

その他の要素

画像の挿入

img(src='/images/example.png' alt='Example Image')

リンクリスト

nav
  ul
    li: a(href='/home') Home
    li: a(href='/about') About
    li: a(href='/contact') Contact

結果

<nav>
  <ul>
    <li><a href="/home">Home</a></li>
    <li><a href="/about">About</a></li>
    <li><a href="/contact">Contact</a></li>
  </ul>
</nav>

これらの例を使うことで、Jade(Pug)の記述が簡単に理解でき、様々な場面に対応できます。Jadeの簡潔な記述で効率的にテンプレートを作成しましょう!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?