2017-05-09 2 views
0

Bevor ich nach webpack 2 aufgerüstet, ich folgendes tun könnte:Vergleich Klassen mit webpack2 und reagieren

children: PropTypes.arrayOf((propValue, key) => { 
     const type = propValue[key].type 
     if (type !== Column && type !== ColumnGroup) { 
     throw new Error('<Table> can only have <Column> and <ColumnGroup> as children.') 
     } 
    }) 

Diese nicht mehr mit webpack 2. Der Fehler scheint zu funktionieren immer geworfen wird. Was ist der richtige Weg, um Reaktionsklassen mit Webpack 2 zu vergleichen?

Das ist mein .babelrc

{ 
    "presets": [ 
    ["es2015", {"modules": false}], 
    "react" 
    ], 
    "plugins": [ 
    "transform-class-properties", 
    "transform-object-rest-spread", 
    "react-hot-loader/babel" 
    ] 
} 

UPDATE:

Es hat etwas mit Einstellung der NODE_ENV gleich etwas anderes als die Produktion zu tun. Ich bin in der Lage, dies hier zu reproduzieren: https://github.com/dadamssg/react-class-bug/tree/master

+0

Verwenden Sie einen Minifier? –

+0

nein. Ich benutze jedoch das CommonsChunkPlugin. Vielleicht hat das etwas damit zu tun? – David

+0

Ich glaube nicht. Welche Version von React verwenden Sie? –

Antwort

0

Offenbar ist dies bekannt Problem durch Reaktion Hot Loader verursacht.

https://github.com/facebook/react/issues/9652

ich um es funktionierte durch meine eigenen statischen Variable auf den Komponentenklassen und zu vergleichen, dass das Hinzufügen.

children: PropTypes.arrayOf((propValue, key) => { 
     const {_componentClass} = propValue[key].type 
     if (_componentClass !== Column._componentClass && _componentClass !== ColumnGroup._componentClass) { 
     throw new Error('<Table> can only have <Column> and <ColumnGroup> as children.') 
     } 
    }) 

Nicht ideal, aber es funktioniert.

Verwandte Themen