gpt4 book ai didi

javascript - Sencha touch - Ext.XTemplate if/else 不工作

转载 作者:行者123 更新时间:2023-11-30 12:46:58 25 4
gpt4 key购买 nike

大家好,我是 Sencha touch 的新手。我在 Ext.dataview.List 中显示数据时遇到问题与 itemTpl .这就是我设置 itemTpl 的方式在config

itemTpl: new Ext.XTemplate(

'<div class="featureImageHolder"><img class="featureImage" src="{itemImage}" alt="{itemName}" /></div>',

'<span class="item">',
'<h3 class="saleName">{itemName}</h3>',
'<span class="priceOptions">',
'<tpl for="prices">',
'<span class="priceOptionReg">',
'<tpl if="priceOptionDesc">{priceOptionDesc}</tpl> ',
'<tpl if="priceOptionReg">{priceOptionReg}</tpl> ',
'<tpl if="priceReg">${priceReg}</tpl> ',
'<tpl if="priceRegSuffix">{priceRegSuffix}</tpl> ',
'</span>',
'<tpl if="priceSale"><span class="priceOptionSale">',
'<tpl if="priceSaleDesc">{priceSaleDesc}</tpl> ',
'<tpl if="priceOptionSale">{priceOptionSale}</tpl> ',
'<tpl if="priceSale">${priceSale}</tpl>',
'<tpl if="priceSaleSuffix">{priceSaleSuffix}</tpl> ',
'</span></tpl>',
'</tpl>',
'</span>',
'</span>',
'<div class="clear"></div>'
),

它运行良好并显示产品列表。但现在我只需要更改第一个记录的 CSS 类,因为它是一个广告横幅。所以我使用以下 if 语句:

itemTpl: new Ext.XTemplate(
'<tpl if={isBanner} === true>',
'<div class="myTestClass">{itemImage}</div>',

'<tpl elseif={isBanner} === false>',
'<div class="featureImageHolder"><img class="featureImage" src="{itemImage}" alt="{itemName}" /></div>',
'</tpl>',


'<span class="item">',
'<h3 class="saleName">{itemName}</h3>',
'<span class="priceOptions">',
'<tpl for="prices">',
'<span class="priceOptionReg">',
'<tpl if="priceOptionDesc">{priceOptionDesc}</tpl> ',
'<tpl if="priceOptionReg">{priceOptionReg}</tpl> ',
'<tpl if="priceReg">${priceReg}</tpl> ',
'<tpl if="priceRegSuffix">{priceRegSuffix}</tpl> ',
'</span>',
'<tpl if="priceSale"><span class="priceOptionSale">',
'<tpl if="priceSaleDesc">{priceSaleDesc}</tpl> ',
'<tpl if="priceOptionSale">{priceOptionSale}</tpl> ',
'<tpl if="priceSale">${priceSale}</tpl>',
'<tpl if="priceSaleSuffix">{priceSaleSuffix}</tpl> ',
'</span></tpl>',
'</tpl>',
'</span>',
'</span>',
'<div class="clear"></div>'
),

问题是if/elseif都为每条记录执行。如果我使用 if/else它在控制台中给出错误。

Uncaught SyntaxError: Unexpected token else 

你可以看到我用过

'<tpl if={isBanner} === true>',

我也用过

'<tpl if={isBanner} == true>',

我也尝试了很多变体,比如比较数值而不是 bool 值,以及使用 &gt;&lt; .还尝试比较 String 值。但是对于所有变化,if/elseif都在执行和if/else给出错误。

感谢任何帮助,我只需要为第一个记录更改类。

最佳答案

如果 isBanner 是 bool 值,这将起作用

'<tpl if="isBanner">',
'<div class="myTestClass">{itemImage}</div>',
'<tpl else>',
'<div class="featureImageHolder"><img class="featureImage" src="{itemImage}" alt="{itemName}" /></div>',
'</tpl>',

关于javascript - Sencha touch - Ext.XTemplate if/else 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22220107/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com