我創建了一個可以動態調用新宏的Swig宏。我發現這樣做的結果是,來自嵌套宏的HTML標記不是呈現爲HTML,而是呈現爲包含我使用的HTML標記的HTML文本節點。我的測試標記只是一個「Hello World!」的H1元素。在元素內部。Do Swig的宏是否支持調用嵌套宏動態?
做Swig的宏支持調用嵌套宏嗎?或者我如何從嵌套宏獲取HTML標記以呈現爲HTML?
下面是我用這個測試確切的代碼:
macros.html 主/父宏(HTML渲染精細):
{% macro call(macro) %}
{% if (macro.name === "transitions") %}
{% import "transitions.html" as transitions %}
<h1>Transitions!</h1>
{{ transitions[macro.method](macro.vars) }}
{% elseif (macro.name === "grid") %}
{% import "grids.html" as grids %}
<h1>Grids!</h1>
{{ grids[macro.method](macro.path, macro.vars) }}
{% endif %}
{% endmacro %}
transitions.html 嵌套/子宏(字符串呈現):
{% macro slider(vars) %}
<h1>Hello Slider!</h1>
{% endmacro %}