Ext.XTemplate的語(yǔ)法
Ext.XTemplate是Ext中關(guān)于頁(yè)面模板的一個(gè)組件。用來(lái)將數(shù)據(jù)和模板組合出最終的html。所謂數(shù)據(jù)指的是javascript的對(duì)象。EMP在loadEntityToPage中使用了這個(gè)組件。舉例如下;
//html 模板
在模板中,用“{}”括起來(lái)的內(nèi)容,被當(dāng)作是數(shù)據(jù)對(duì)象的一個(gè)屬性。例如{id},會(huì)被替換成為數(shù)據(jù)對(duì)象的id,以此類(lèi)推。
問(wèn)題來(lái)了,按照上面的例子,如果你在模板中寫(xiě)一個(gè){head.type},想把腦袋的類(lèi)型也顯示出來(lái),這時(shí)候會(huì)發(fā)現(xiàn)出錯(cuò)了。原因是模板中不支持用{a.b}的方式表示嵌套屬性。那么怎么辦呢。分為兩種情況:
如果你從后臺(tái)取回來(lái)的數(shù)據(jù)只有一個(gè),那么這樣寫(xiě):{[values.head.type]}。
如果你從后臺(tái)取回來(lái)的數(shù)據(jù)不只一個(gè):那么這樣寫(xiě):{[values[xindex].head.type}}
語(yǔ)法解釋?zhuān)?#8220;{[]}”括起來(lái)的東西會(huì)被當(dāng)作javascript執(zhí)行,其中有幾個(gè)特殊的字符,values代表數(shù)據(jù)對(duì)象,如果數(shù)據(jù)對(duì)象是數(shù)組,那么用xindex代表當(dāng)前索引。
關(guān)于Ext.Template更多的信息:http://extjs.com/deploy/dev/docs/?class=Ext.XTemplate