類似於python中的函式,巨集的作用就是在模板中重複利用**,避免**冗餘。
jinja2支援巨集,還可以匯入巨集,需要在多處重複使用的模板**片段可以寫入單獨的檔案,再包含在所有模板中,以避免重複。
- 定義, 相當於定義乙個函式一樣 -
->
<
input
type
="text" name=
'username' value=
''>
- 使用, 相當於呼叫乙個函式一樣 -
->
}
- 定義 -
->
<
input
type
="}" name=
"}" value=
"}" size=
"}">
- 使用 -
->
}-name不指定, 則name=
"", 即也是空-
->
- 或者 -
->
}- 或者 -
->
}
import
'macro.html'
as func with context
form 'macor.html'
import
input
with context
"en"
>
"utf-8"
>
巨集定義<
/title>
<
/head>
-不帶引數巨集的定義-
->
<
input
type
="text" name=
'username' value=
''>
-帶引數巨集的定義-
->
<
input
type
="}" name=
"}" value=
"}" size=
"}">
<
/body>
<
/html>
"en"
>
"utf-8"
>
marco使用演示<
/title>
<
/head>
}<
/body>
<
/html>
"en"
>
"utf-8"
>
marco演示2
<
/title>
<
/head>
輸入使用者名稱:
}<
/p>
輸入密碼:
}<
/p>
輸入年齡:
巨集定義中 和 符號的使用和巨集定義展開問題
程式如下 include define f a,b a b define g a a define h a g a intmain 答案 第一行 12 第二行 f 1,2 說明 1 關於符號 和 兩個符號都只能用於預處理巨集擴充套件。不能在普通的原始碼中使用它們,只能在巨集定義中使用。簡單的說,是把...
abs int 巨集定義 巨集定義和巨集方法
巨集定義和巨集方法 定義機型 define is iphone5 uiscreen instancesrespondtoselector selector currentmode cgsizeequaltosize cgsizemake 640,1136 uiscreen mainscreen cu...
flask 巨集,繼承和包含
flask中 的巨集就是為了避免 的重用,提高開發效率的一種方式,在 復用率高的情況下 只需要定義乙個巨集,然後重複呼叫就行了,首先定義乙個巨集 macro 如以下 把乙個標籤的字段定義乙個巨集 然後再呼叫巨集 這樣可以多次重複呼叫就能達到自己i想要的效果,是不是很方便呢 繼承block 繼承從名字...