In VueJS können wir mit v-if ein DOM-Element hinzufügen oder entfernen:
<button v-if="isRequired">Important Button</button>
Gibt es jedoch eine Möglichkeit, Attribute eines dom-Elements hinzuzufügen / zu entfernen, z. B. für das folgende bedingte Festlegen des erforderlichen Attributs:
Username: <input type="text" name="username" required>
von etwas ähnlichem wie:
Username: <input type="text" name="username" v-if="name.required" required>
Irgendwelche Ideen?
null
, undefined
oder false
“ , die von einem JS - Skript unterschiedlich ist falsch zu bewerten. Dies bedeutet, dass eine leere Zeichenfolge in JavaScript falsch ist, das Attribut jedoch weiterhin zu DOM hinzugefügt wird. Um zu verhindern, dass Sie versuchen könntenv-bind:name="name || false"
false
über eine Requisite explizit an die untergeordnete Komponente übergeben?
'false'
. In anderen Fällen, in denen Sie das Vorhandensein eines nicht-booleschen HTML-Attributs für das Element steuern müssen, können Sie das bedingte Rendern v-if
wie hier vorgeschlagen verwenden: github.com/vuejs/vue/issues/7552#issuecomment-361395234
attribute
aber NICHT prop
. Wir können sicher explizit false
über eine Komponenteneigenschaft, aber NICHT ein Attribut (das nicht als Eigenschaft erkannt wird) übergeben. Hab ich recht?