محاولة استخدام المكوِّن input
مع مساعد المكوِّن ، على النحو التالي:
passedComponent=(component 'input' type="number" value=myValue)
سيؤدي إلى فشل التأكيد مثل هذا:
Uncaught Error: Assertion Failed: You cannot use 'input' as a component name. Component names must contain a hyphen
stevesims هذا صحيح. لا يمكن حاليًا إنشاء مكون إغلاق باستخدام input
. التبرير مرتبط إلى حد ما بمكونات Glimmer ، نريد حجز الاسم input
لهؤلاء.
سنقوم بإغلاق هذا الآن لأنه ليس خطأ ، ولكن يمكننا إعادة فتح ومتابعة المناقشة.
وبالتالي فإن المعنى الضمني هو أن المكوِّن input
يحتاج إلى إعادة تسميته - وهو أمر غير عملي بشكل واضح - أو بدلاً من ذلك ، يجب أن يتوفر غلاف قياسي موصول
عدم القدرة على استخدام مكون قياسي (يحمل في ثناياه عوامل) مع مساعد المكون يبدو وكأنه قيد فردي وتعسفي
{{#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}}
أنا أعرض هذا كحل بديل مفيد ، وأقترح بمهارة أنه عيب في استخدام Ember. سيكون رائعًا إذا "نجحت" :)
التعليق الأكثر فائدة
وبالتالي فإن المعنى الضمني هو أن المكوِّن
input
يحتاج إلى إعادة تسميته - وهو أمر غير عملي بشكل واضح - أو بدلاً من ذلك ، يجب أن يتوفر غلاف قياسي موصولعدم القدرة على استخدام مكون قياسي (يحمل في ثناياه عوامل) مع مساعد المكون يبدو وكأنه قيد فردي وتعسفي