React: يؤدي استخدام React.addons.CSSTransitionGroup إلى إضافة <span>؟</span>

تم إنشاؤها على ٢٠ يونيو ٢٠١٥  ·  3تعليقات  ·  مصدر: facebook/react

قد يكون خطأ المستخدم هنا ، ولكن ربما لا. استخدام ECMA2015 + بابل إذا كان الأمر مهمًا.

return (
            <div className={curtainClasses} style={this.props.curtainClass ? null : curtainStyle} onClick={this.props.clickHandler}>
                <div key="_srm-modal" style={this.props.modalClass ? null : modalStyle} className={modalClasses}>
                    {this.props.children}
                </div>
            </div>
        );

يعرض (في تطبيقي):

<div class="_srm-curtain modal-background" data-reactid=".0.0.1.1.0.0">
    <div class="modal-pod" data-reactid=".0.0.1.1.0.0.$_srm-modal">
        <h1 data-reactid=".0.0.1.1.0.0.$_srm-modal.0">Hello World</h1>
    </div>
</div>

ومع ذلك ، إذا حاولت العبث مع CSSTransitionGroup:

    let ReactCSSTransitionGroup = React.addons.CSSTransitionGroup;
        return (
            <div className={curtainClasses} style={this.props.curtainClass ? null : curtainStyle} onClick={this.props.clickHandler}>
                <ReactCSSTransitionGroup transitionName={this.props.transitionName}>
                    <div key="_srm-modal" style={this.props.modalClass ? null : modalStyle} className={modalClasses}>
                        {this.props.children}
                    </div>
                </ReactCSSTransitionGroup>
            </div>
        );

يتم عرضه بهذه الفترات الإضافية:

<div class="_srm-curtain modal-background" data-reactid=".0.0.1.1.0.0">
    <span data-reactid=".0.0.1.1.0.0.0">
        <div class="modal-pod" data-reactid=".0.0.1.1.0.0.0.$=1$_srm-modal">
            <h1 data-reactid=".0.0.1.1.0.0.0.$=1$_srm-modal.0">Hello World</h1>
        </div>
    </span>
</div>

إذا كنت أفعل شيئًا خاطئًا ، يرجى توجيهي في الاتجاه الصحيح! ربما كانت هناك ملاحظة في المستندات فاتني!

شكرا يا رفاق ، استمروا في العمل الرائع!

التعليق الأكثر فائدة

ربما تم إغلاق هذه المشكلة ، لكن استخدام React.Fragment كخاصية مكون حل المشكلة بالنسبة لي.

<ReactCSSTransitionGroup
    component={React.Fragment}
    transitionName="slide"
    transitionEnterTimeout={500}
    transitionLeaveTimeout={500}
 >
 ....
</ReactCSSTransitionGroup>

ال 3 كومينتر

أعتقد أن هذا هو السلوك الموثق لـ CSSTransitionGroup .

شكرا جزيلا! فاتني ذلك الخط الثانوي! تضمين التغريدة

ربما تم إغلاق هذه المشكلة ، لكن استخدام React.Fragment كخاصية مكون حل المشكلة بالنسبة لي.

<ReactCSSTransitionGroup
    component={React.Fragment}
    transitionName="slide"
    transitionEnterTimeout={500}
    transitionLeaveTimeout={500}
 >
 ....
</ReactCSSTransitionGroup>
هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات