Доступ к внешней переменной в макросе?

Как получить доступ main переменная пространства имен в макросе?

У меня есть файл макроса с именем orderMacro.ftlи импортировать его в test.ftl как это:

<#import "path/orderMacro.ftl" as order/>

Я также определяю переменную в test.ftl:

<#assign orderType="normal"/>

Теперь я получаю доступ orderType переменная в orderMacro с помощью main.orderType, main означает пространство имен, созданное для test.ftl(возможно, я неправильно понимаю это слово). он сообщает об ошибке: Expression main is undefined

2 ответа

Решение

Вам нужно написать .main.orderType, Обратите внимание на начальную точку. Это синтаксис для доступа к "специальным переменным", чтобы они не могли конфликтовать с другими переменными.

Назначьте его с помощью глобального

http://freemarker.org/docs/ref_directive_global.html

<#global orderType="normal"/>
Другие вопросы по тегам