إضافة className في SelectDisplayProps
الواقع classNames الموجودة
انا املك مكون. عندما أرغب في إعطاء className إلى div الذي يعرض القيمة المحددة لـ Select ، بدلاً من إضافة className إلى العناصر الأخرى مثل كل مكون من مكونات واجهة المستخدم المادية ، فإنه يتجاوزهم.
لدي مكون <Select />
، عندما أقوم بإضافة className
في SelectDisplayProps
، فإنه يتخطى classNames الحالية للمكون الذي يعرض القيمة المحددة في .
لا ينبغي أن يتجاوز classNames الموجودة ولكن يتم إضافتها إليها.
هنا يمكنك العثور على صندوق رمل لرؤية الخطأ: https://codesandbox.io/s/material-ui-issue-forked-oi0vd
خطوات:
SelectDisplayProps
:SelectDisplayProps={{
className: classes.selectDisplay
}}
SelectDisplayProps
إلى غير محدد ، كما لو لم تحدد واحدًا.SelectDisplayProps
، فهناك فئة افتراضية لواجهة المستخدم المادية. ولكن عندما يتم تحديد SelectDisplayProps
، يختفي classNameأريد تجاوز نمط العنصر الذي يعرض قيمة التحديد. المشكلة موجودة حتى لو قمت بتغيير الأسلوب تمامًا الذي أحاول تقديمه ، لذلك لا أعتقد أنه مرتبط.
| التقنية | الإصدار |
| ----------- | ------- |
| واجهة المستخدم المادية | v4.11.0 |
| رد فعل | 16.13.1 |
| المستعرض | Chrome - الإصدار 86.0.4240.75 (الإصدار الرسمي) (64 بت) |
| تيبسكريبت | 3.9.5 |
Newpoki شكرًا على التقرير ، يمكنني تأكيد المشكلة. ما رأيك في هذا الإصلاح؟
diff --git a/packages/material-ui/src/Select/SelectInput.js b/packages/material-ui/src/Select/SelectInput.js
index eb58ecd1b3..2098d0f3b8 100644
--- a/packages/material-ui/src/Select/SelectInput.js
+++ b/packages/material-ui/src/Select/SelectInput.js
@@ -353,16 +353,6 @@ const SelectInput = React.forwardRef(function SelectInput(props, ref) {
return (
<React.Fragment>
<div
- className={clsx(
- classes.root, // TODO v5: merge root and select
- classes.select,
- classes.selectMenu,
- classes[variant],
- {
- [classes.disabled]: disabled,
- },
- className,
- )}
ref={setDisplayNode}
tabIndex={tabIndex}
role="button"
@@ -376,6 +366,17 @@ const SelectInput = React.forwardRef(function SelectInput(props, ref) {
onBlur={handleBlur}
onFocus={onFocus}
{...SelectDisplayProps}
+ className={clsx(
+ classes.root, // TODO v5: merge root and select
+ classes.select,
+ classes.selectMenu,
+ classes[variant],
+ {
+ [classes.disabled]: disabled,
+ },
+ className,
+ SelectDisplayProps.className
+ )}
// The id is required for proper a11y
id={buttonId}
>
هل تريد العمل على طلب سحب؟ :)
أود أن أجربها. هل يمكنك تخصيصها لي؟
مرحبا،
آسف على الرد المتأخر ، كنت في وظيفتي: sweat_smile:
مسرور لقد كانت مشكلة حقيقية وليست من رأيي ، وسيتم إصلاحها: د
شكرا reedanders للعلاقات العامة.