Freemarker:include 和 import 的区别是什么?

14

我正在尝试创建两个模板,并在另一个中使用一个.ftl(freemarker)文件的变量。

我不太明白为什么我应该使用include而不是import


***<#include><#import>***是两个Freemarker模板引擎的指令,用于包含或导入其他模板文件中的内容。 - Parkash Kumar
1个回答

24

#include与将所包含文件的内容复制粘贴到#include标签处非常相似。#import也处理目标文件,但不输出任何内容。相反,它将导入模板创建的变量集合(命名空间)分配给as关键字后面的变量。由于#macro#function只是创建变量,因此#import对于引入一组实用程序宏和函数非常实用。还要注意,第二次#import相同的文件不会执行任何操作(因为命名空间只填充一次),而调用两次#include将处理目标文件两次。

至于JavaScript,FreeMarker在服务器端运行,JavaScript在浏览器中运行。因此,浏览器只能看到来自FreeMarker的最终输出。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接