javascript - link - Pasar variables al diseño base desde la extensión de la plantilla pug/jade
pug href interpolation (1)
Me gustaría establecer una clase en la etiqueta del cuerpo declarando una variable en una plantilla que extiende un diseño base.
Cuando lo intento, la variable body_class
undefined
está undefined
en el diseño.
Parece que el diseño se ejecuta antes que la plantilla extendida, o se ejecutan en diferentes ámbitos o algo así.
¿Hay otra manera? ¿Funcionaría una mezcla aquí?
_layout.jade:
doctype html
html(lang="en-au")
head
meta(charset="utf-8")
block css
body(class=(body_class || "it-did-not-work"))
block header
block content
block footer
home.jade:
var body_class = ''i-am-the-home-page''
extends _layout
block header
h1 home
Ah ha Lo averigué.
Cree un bloque en la parte superior del diseño base y agregue sus variables allí.
_layout.jade:
block variables
doctype html
html(lang="en-au")
head
meta(charset="utf-8")
block css
body(class=(body_class || "it-did-not-work"))
block header
block content
block footer
home.jade:
extends _layout
block variables
- var body_class = ''i-am-the-home-page''
block header
h1 home