Book Image

Web Development with Jade

By : Sean Lang
Book Image

Web Development with Jade

By: Sean Lang

Overview of this book

Table of Contents (16 chapters)

Extends


The extends keyword allows us to specify that a particular template extends another template. This means the template in which the keyword is used gets to modify the blocks of the other template.

The syntax is simple; using extends layout means that the template in which it is used gets to extend layout.jade (the .jade part of the filename is implied). Also, full paths can be used; like if layout.jade was one directory above the location of the current template, we could use ../layout to access it.

Replace

To replace the content of a block, we use the same syntax as defining a block, but it must be put in a template that extends the file in which the block was defined. For example, if we have a page in which we need both jQuery and underscore.js, we could redefine the scripts block as follows:

page1.jade (in the same directory as layout.jade):

Jade

HTML

extends layout

block scripts
  script(src='jquery.js')
  script(src='underscore.js')

block content
<!DOCTYPE html>
<html...