2016-03-07 8 views
8

varsayalım ben ettik aşağıdaki sınıfı:Bir ES6 sınıfındaki süper (sahne) çağrı önemli mi?

constructor(props) { 
    super(props); 
} 

Benim şu anki kod gayet güzel çalışıyor ama bu olmadığını bilmek istedim: Ben aşağıdaki kurucu geçen önemliyse olduğunu bilmek istiyorum

class Tabs extends React.Component { 
    displayName: Tabs; 

    static propTypes = { 
    selected: React.PropTypes.number, 
    children: React.PropTypes.oneOfType([ 
    React.PropTypes.array, 
    React.PropTypes.element 
    ]).isRequired 
    }; 

    constructor() { 
    super(); 
    this.state = { 
    selected: 0, 
    maxSelected: 0 
    }; 

    render() { 
    return(
     <div> 
     {this.props.selected} 
     {this.props.children} 
     </div> 
    ); 
    } 
}; 

iyi bir uygulamadır.

+0

Hayır, aslında bu http://eslint.org/docs/rules/no-useless-constructor adresine izin vermeyecek bir kural bile yoktur. – azium

+1

Olası yinelenen [süper() ”ile" arasındaki fark nedir? " es6 sınıflarını kullanırken React'ta süper (sahne)? (http://stackoverflow.com/questions/30571875/whats-the-difference-between-super-and-superprops-in-react-when-using-e) – XML

cevap

15

Ben Alpert with the React team'a göre, kurucunun içinde this.props'u kullanmayı düşünüyorsanız, yalnızca kurucuyu tanıtmak gerekir. Kurucu çağrıldıktan sonra React, bileşenleri bileşene dışarıdan bağlar.