ThinkPHP 6.0 的 ThinkTemplate 模板继承

参考文档

模板继承 · ThinkTemplate开发指南 · 看云 (kancloud.cn)

模板继承

一般Web开发中,继承主要使用在网站的顶部菜单、底部。这些内容可以定义在父模板中,子模板直接继承,而不需要重复书写。模板继承是为了重用模板中的公共内容。

定义相关的区块(block),然后继承(extend)该基础模板的子模板中就可以对基础模板中定义的区块进行重载。

使用方法

演示文件名为 base.html,文件层级为:view/base.html

定义区块

base.html文件中添加区块:

{block name="title"}<title>网站标题</title>{/block}

注意:

  1. block 标签的 name 属性这个标识在当前模板中应该是唯一的
  2. 一个模板中可以定义任意多个名称标识不重复的区块

继承使用区块

在需要继承区块的文件中继承:

# 使用了 extend 标签来继承了 base 模板
{extend name="view:base" /}

# 继承使用区块
{block name="title"}<title>新网站标题</title>{/block}




记录某次使用碰到的小问题

定义的区块和模板的继承都没有问题,语法也没有差错,但就是无法显示继承修改的内容,反复尝试了多次都没有解决,

后来才发现,是控制器的视图中指向了原模板文件,并没有指向继承区块的文件,所以显示的是原模板的内容,不可能会出现继承的页面!!!

也算是个小收获!

本作品采用《CC 协议》,转载必须注明作者和本文链接
敢于争先 @ 不正
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!