У нас есть общий шаблон верхнего/нижнего колонтитула в качестве родительского шаблона, который мы будем повторно использовать для 100 подшаблонов. Директива extends не поддерживает это...
Когда я просматриваю документацию Rythm, я нашел способ добиться этого с помощью директив include/invoke, но основной целью директивы include/invoke является вызов общей функции. Директива Extends поддерживается обратным образом, помещая содержимое основного шаблона с директивой рендеринга в качестве родительского и шаблона верхнего/нижнего колонтитула в качестве подшаблона, но вариант использования в реальном времени совершенно другой.
Это мое понимание правильно? Есть ли способ решить мою проблему?
Отредактировано:
Я закодировал, как показано ниже, чтобы достичь этого:
нижний колонтитул.html
@def header1() {
<h3>This is footer1 section</h3>
}
@def header2() {
<h3>This is footer2 section</h3>
}
template1.html
@include("footer.html")
@args String who
<html>
<head>
<title>Hello world from Rythm</title>
</head>
<body>
<h1>Hello @who</h1>
@if(footer.equals("footer1){
@header1();
} else {
@header2();
}
</body>
</html>
Что я сделал, так это с помощью вызова метода include/invoke я получил результат, но когда я использую расширения, он не работает. Если возможно, можете ли вы решить мой случай, используя расширения?
@extends
предназначена для реализации макета шаблона. См. fiddle.rythmengine.org/#/editor/. - person Gelin Luo   schedule 21.10.2016