如何防止模板文字中的条件呈现错误
How to prevent a conditional in a template literal from rendering false
我有以下模板文字
`<div class="date ${($.inArray(date, dates) == -1) && `outside`}">
<div>${date.format('D')}</div>
</div>`
当表达式 ($.inArray(date, dates) == -1)
的计算结果为真时,外面的 class 出现,没有其他任何东西,但是,当它的计算结果为假时,输出的结果是 ${($.inArray(date, dates) == -1) &&
外面}
.
如何避免输出 false?
三元运算符:
($.inArray(date, dates) == -1) ? 'outside' : ''
回退到空字符串:
($.inArray(date, dates) == -1) && 'outside' || ''
你可以使用三元组 conditional operator: condition ? valueWhenTrue : valueWhenFalse
:
`<div class="date ${($.inArray(date, dates) == -1) ? `outside` : ``}">
<div>${date.format('D')}</div>
</div>`
我有以下模板文字
`<div class="date ${($.inArray(date, dates) == -1) && `outside`}">
<div>${date.format('D')}</div>
</div>`
当表达式 ($.inArray(date, dates) == -1)
的计算结果为真时,外面的 class 出现,没有其他任何东西,但是,当它的计算结果为假时,输出的结果是 ${($.inArray(date, dates) == -1) &&
外面}
.
如何避免输出 false?
三元运算符:
($.inArray(date, dates) == -1) ? 'outside' : ''
回退到空字符串:
($.inArray(date, dates) == -1) && 'outside' || ''
你可以使用三元组 conditional operator: condition ? valueWhenTrue : valueWhenFalse
:
`<div class="date ${($.inArray(date, dates) == -1) ? `outside` : ``}">
<div>${date.format('D')}</div>
</div>`