摘要
网上关于SWIG语法的介绍甚少,本人也在学习SWIG语法以更好的优化自己的博客,本文介绍SWIG的高级语法
语法主要模板语法,通过了解本章,你可以了解基本主题模板的SWIG文件的高级语法,让你随心所欲的完善您自己网
站。本文的关键字:extends 、Block、include、for、if、set等.
相关推荐:
HEXO-建站系列
HEXO-优化系列
HEXO-进阶系列
前言
swig是JS模板引擎,特点如下:
+根据路劲渲染页面
+面向对象的模板继承,页面复用
+动态页面
+快速上手
+功能强大
语法使用
swig的变量
1 | {{ foo.bar }} |
swig的标签
extends
使当前模板继承父模板,必须在文件最前 参数: file
父模板相对模板 root 的相对路径,后面例子介绍如何实现模板继承。
block
定义一个块,使之可以被继承的模板重写,或者重写父模板的同名块 参数: name
块的名字,必须以字母数字下划线开头
parent
将父模板中同名块注入当前块中
include
包含一个模板到当前位置,这个模板将使用当前上下文 参数: file
包含模板相对模板 root 的相对路径
1 |
|
raw
停止解析标记中任何内容,所有内容都将输出 参数: file
父模板相对模板 root 的相对路径
for
遍历对象和数组 参数:x 当前循环迭代名
in: 语法标记 y: 可迭代对象。
1 |
|
if
条件语句,参数:
接受任何有效的 JavaScript条件语句
1 |
|
autoescape
改变当前变量的自动转义行为 参数: on
当前内容是否转义 type: 转义类型,js 或者 html,默认 html
1 | input = '<p>Hello "you" & \'them\'</p>'; |
set
设置一个变量,在当前上下文中复用
1 | {% set foo = [0, 1, 2, 3, 4, 5,6] %} |
模板继承
Swig 使用 extends 和 block 来实现模板继承
example:
1 | //layout.html |
1 | //index.html |
swig模板经过编译后:
1 |
|
总结
通过简单的了解,我们发现swig非常用上手,同时功能强大,掌握以上的标签和变量,多多测试和联系,我相信您
很快会掌握其中的技巧。通过简单的标签按你所需要更改你的页面.更多的swig信息了解,请移步”SWIG网站”SWIG网站。
以上部分仅仅是对swig的语法介绍.如果您并不了解哪些swig文件对应的是哪些页面,请继续 关注”HEXO进阶-SWIG引擎渲染结构”.
本文简单的介绍了关于如何找到你页面对应的SWIG文件。和简单的SWIG引擎模板结构介绍。
结语
如果你还需要了解更多技术文章信息,请继续关注Jory博客