使用mixin与另一个mixin

时间:2015-03-07 12:47:23

标签: html preprocessor pug

为什么这个mixin在另一个mixin中会返回NaN?

mixin kendoui_base
    =vLibPath + "kendo/"

mixin kendoui_js(jsName)
    +include_js(+kendoui_base + "js/" + jsName)

kendoui_js(" A")打印:

<script src="NaNjs/A"></script>

在没有+ include_js()的情况下转储+ kendoui_base会返回预期的字符串。 (我刚刚开始学习Jade,所以如果这很明显,我很抱歉。)

1 个答案:

答案 0 :(得分:0)

Jade正在将您的+kendoui_base解释为JavaScript语法,将kendoui_base函数强制转换为NaN号。

解决此问题的最简单方法是转换你的&#34; mixin&#34;到JS函数:

- function kendoui_base() { return vLibPath + "kendo/"; }

mixin kendoui_js(jsName)
    +include_js(kendoui_base() + "js/" + jsName)

请记住,mixins用于HTML渲染,而不是类似函数的返回等。