タグ関数を使用して値のないブール属性を設定する
Aug 20 2020
タグ関数を使用する場合、nullになる可能性のある値のない属性をどのように処理しますか?
たとえば、私たちにできることは素晴らしいことです…
{% set idVar = 'idstring' %}
{% set nameVar = 'namestring' %}
{% set typeVar = 'typestring' %}
{{ tag('input', {
id: idVar,
name: nameVar,
type: typeVar
}) }}
…引き起こす:
<input id="idstring" name="namestring" type="typestring">
しかし、required
属性が変数でもある場合はどうでしょうか?できません:
{% set reqVar = '' %}
{% if field is required %}
{% set reqVar = 'required' %}
{% endif %}
{{ tag('input', {
id: idVar,
name: nameVar,
required: reqVar
}) }}
…reqVar
空の場合、required
属性をまったく書き込まないようにする必要があるためです。引き起こす:
<input id="idstring" name="namestring" type="typestring">
…ではなく:
<input id="idstring" name="namestring" type="typestring" required>
同じことが、のような他のブール属性にも当てはまりますhidden
。
この関数でこれを行う方法はありますか?何が足りない、または得られないのですか?
回答
4 BrandonKelly Aug 20 2020 at 00:59
属性がに設定されている場合、true
値なしで追加されます。
{{ tag('input', {
id: idVar,
name: nameVar,
required: true
}) }}
また、null
またはfalse
に設定されている場合は、最初からリストされていないかのように省略されます。