美文网首页程序员
模板中的元素共用

模板中的元素共用

作者: Jack_7eb5 | 来源:发表于2018-05-16 22:14 被阅读18次

很多时候我们页面上的元素是重复又重复,如果要改真的挺麻烦的,可以对这部分进行优化。

优化的方法就是提取出公共的部分,对不是公共的部分传递变量进行判断,这里以一个项目举例说明。

页面效果

上面的例子是几个页面都有的tab切换,除了名字和链接其余都一样。

提取出公共的部分到一个新的文件,一般情况下会把公共模板放在common目录下,这里我们取名叫tab_brand.php,因为是品牌相关的tab所以这样命名。

模板源代码

寻找不一样的地方,首先选中有样式class="current", 访问链接和名字也不一样,我们要修改这一部分内容。所以在引用页面,需要传递参数判断是哪个页面,然后选中样式,链接,名字。如果这些都在引用页面写也没有问题,但是参数传递的参数就很多了。我们可以把页面中的链接,名字都配置在公共页面,就像下面一样。

参数配置

参数配置完成之后,需要把他们遍历输出出来,这样就不用写很多个标签了。

遍历tab

这样配置项就完成了,如果需要修改只修改php代码就可以了,html不用修改,还有就是页面选中效果该如何做呢,必须要在应用页面传递参数,然后进行判断。

首先应用页面如何引入这个模板呢,我们以Yii2框架举例。

引入公共页面

不同的框架引入方式不一样,我们详细讲解一下,首先在需要引入公共模板的地方引入文件,renderFile是渲染模板并返回,然后把返回的内容输出到当前页面上,这里我们要传递一个参数,参数是一个数组,在公共模板页面就可以使用这个参数了。

使用传递的参数

在公共模板直接使用参数$tab,而不需要从数组中获取,这是模板引擎实现的操作,加上需要的样式判断,这里$tab的值也有考究,不可以随便取,要和我们公共模板配置项可以匹配。

链接

这里的链接我们并不是直接使用配置项中的,而是使用我们封装的一个生成链接地址的方法,生成含有域名的链接地址,这样的地址尽管把页面下载下来也可以访问,具体效果看一下。

链接效果

下一小节我们将讲解生成生成链接地址的Servcie是如何实现的,具体如何使用?

相关文章

  • 模板中的元素共用

    很多时候我们页面上的元素是重复又重复,如果要改真的挺麻烦的,可以对这部分进行优化。 优化的方法就是提取出公共的部分...

  • vue记录杂杂

    模板组件 模板中只能有一个根元素,可以通过元素属性定制模板 ref : ref 被用来给元素或子组件注册引用信息,...

  • 2.8 jinja2 模板继承

    模板继承 Flask中的模板可以继承,通过继承可以把模板中许多重复出现的元素抽取出来,放在父模板中,并且父模板通过...

  • 学会JasperReport报表导出以后再也难不倒我们了

    一个空的模板页,有类似html的title detail等元素 本节主要讲解模板设计中如何放置模板元素达到我们想要...

  • 03Angular模板在组件类中的引用

    在Angular中,我们可以在当前模板的任何地方使用模板引用变量 引用模板元素 @ViewChild用来在类中引用...

  • Flask系列教程(12)——模板继承

    模版继承 Flask中的模板可以继承,通过继承可以把模板中许多重复出现的元素抽取出来,放在父模板中,并且父模板通过...

  • Vue-06

    组件:vue中一个特别重要的模块组件之间的传值模板中只能有一个同级元素为父元素,即若有多个同级元素存在于模板中,则...

  • Angular中的TemplateRef与ViewContain

    在HTML5标准中引入了template模板元素,模板元素的处理方式是浏览器的一种机制,允许在加载页面的时候对模板...

  • Vue基础教程之-模板语法和计算属性(三)

    一、模板语法 1.1 内容 Vue中的元素内容使用mustache模板引擎进行解析。https://github....

  • CSS选择器(入门7作业)

    1.class 和 id 的使用场景? 当页面中某元素的样式并不独有,或与其他元素共用一个样式时,可以为该元素指定...

网友评论

    本文标题:模板中的元素共用

    本文链接:https://www.haomeiwen.com/subject/cvimdftx.html