jade不允许我在mixin中使用include#{variable}

时间:2013-05-16 05:17:15

标签: pug

我想打印一个include作为mixin的结果,但是jade想要在首次读取mixin时解析include。

mixin myHeader(name)
  div#{name} 
    h1 #{name}
      include #{name}


!!! html
  html
    head
    body
      +myHeader(#home)
      +myHeader(#schedule)
      +myHeader(#map)
      +myHeader(#lecturers)

我认为错误告诉我jade找不到要包含在mixin中的#{name}。

ENOENT,没有这样的文件或目录'#{name} .jade'

2 个答案:

答案 0 :(得分:7)

Jade不支持包含变量。此stackoverflow question

中演示了一种解决方法

答案 1 :(得分:0)

也许您可以改用在不同文件中制作的mixin

喜欢

// popups.pug
mixin temperature()
  h3 temperature

包含在另一个文件中对我来说很好

//modal-content.pug
include popups
mixin modal-content-popup(component)

  .modal-content
    .modal-content__settings
      +#{component}()
    .modal-content__buttons
      button.modal-content__button.modal-content__button--apply Применить
      button.modal-content__button.modal-content__button--close Закрыть

+modal-content-popup('temperature')