Essayer d'utiliser le composant input
avec l'assistant de composant, comme ceci :
passedComponent=(component 'input' type="number" value=myValue)
entraînera un échec d'assertion comme celui-ci :
Uncaught Error: Assertion Failed: You cannot use 'input' as a component name. Component names must contain a hyphen
@stevesims c'est correct. La création d'un composant de fermeture avec input
n'est actuellement pas possible. La justification est un peu liée à Glimmer Components, nous souhaitons leur réserver le nom input
.
Je vais fermer ceci pour l'instant car ce n'est pas un bug, mais nous pouvons rouvrir et continuer la discussion.
l'implication est donc que le composant input
doit être renommé - ce qui n'est évidemment pas pratique - ou bien qu'un wrapper standard avec trait d'union devrait être disponible
ne pas pouvoir utiliser un composant standard (intégré) avec l'assistant de composant semble être une restriction plutôt étrange et arbitraire
{{#if requiresComponentSubstitution}}
<!-- requiresComponentSubstitution: is not "input" -->
{{component inputComponentName
id=(concat elementId '-control')
class='form-control'
type=type
name=valuePath
placeholder=placeholder
value=value
input=(action 'onInput')
}}
{{else}}
{{input id=(concat elementId '-control')
class='form-control'
type=type
name=valuePath
placeholder=placeholder
value=value
input=(action 'onInput')
}}
{{/if}}
Je propose à la fois cette solution de contournement utile et suggère subtilement que c'est un inconvénient d'utiliser Ember. Ce serait fantastique si cela " fonctionnait simplement " :)
Commentaire le plus utile
l'implication est donc que le composant
input
doit être renommé - ce qui n'est évidemment pas pratique - ou bien qu'un wrapper standard avec trait d'union devrait être disponiblene pas pouvoir utiliser un composant standard (intégré) avec l'assistant de composant semble être une restriction plutôt étrange et arbitraire