简单问题: 我正在开始一个新的小项目,我有1个变量玉文件,1个jade文件用于布局,1个jade文件用于mixins,最后1个文件用于模板。
当我尝试使用外部文件中导入的变量时,它们不会被加载到模板中,而mixin会这样做。
当处理page1.jade时,正确导入mixins,正确扩展布局,但不会导入styles.jade中的变量(或看起来似乎),因为mixins无法到达变量 styleCenterMain 分配给样式属性。)
page1.jade:
include mixins.jade
include styles.jade
extends layout.jade
block append wholeContent
block append wholeContent
div.test1 Hi world
block append wholeContent
div.test2 Hi Again
block append wholeContent
+moduleMain()
p Some content to pass to mixin
mixins.jade:(这是获取错误的地方。)
mixin moduleMain()
table(style=styleCenterMain width="100%" height="100%")
style.jade。
- styleCenterMain ="margin-left: 0; margin-top: 0; margin-right: 0; margin-bottom: 0; padding-bottom: 0; padding-top: 0; padding-right: 0; padding-left: 0; vertical-align: top;"
layout.jade(xml文件):
<?xml version="1.0"?>
doctype html
head
body
<!-- main content -->
div(style="background-color:#f2f4f5; margin:0 auto;")
block wholeContent
任何人都可以提示为什么没有导入style.jade或为什么mixin不能访问它的变量?
事先非常感谢
答案 0 :(得分:1)
首先,您要包含样式并命名 style 我会检查它。
Mixins是一个很好的方式,你可以将变量传递给包含的脚本,但是他们必须接收它,它们有自己的范围!
如果您修复了导入名称并执行此操作,则应解决该问题:
<强> mixins.jade 强>
mixin moduleMain(desiredStyle)
table(style=desiredStyle width="100%" height="100%")
<强> page1.jade 强>
....
block append wholeContent
+moduleMain(styleCenterMain)
p Some content to pass to mixin