2016-11-19 2 views
0

Facebook hat die zukünftige Entfernung von React.createClass vollständig zugunsten von ES6-Klassen vorgeschlagen. Ich fange jetzt an, meine react.js-Klassen durchzugehen und sie durch die jetzt akzeptierte -Syntax zu ersetzen. Ich glaube jedoch, dass ich in einigen Dingen noch nicht ganz da bin. Ich habe die folgende API-Halterung codiert und Schluck scheint dieses bestimmte Modul beim Laden nicht zu mögen: Cannot find module '.components/ticker-trader' from '/.../src'.Ersetzen einer React.createClass durch erweitert React.Component

Meine besondere Klasse skizziert als:

import React, { Component, PropTypes } from 'react'; 

class TickerTrader extends React.Component { 
    constructor(props) { 
    super(props); 
    this.state = { 

    }; 
    } 

    componentDidMount() { 
     $.get("api_url", function(data) { 
     this.setState(data), 
     }); 
    } 

    render() { 
    return (
     <div></div> 
    ); 
    } 
} 

export default TickerTrader; 

Könnte jemand umreißen, wo genau hat dies schief gegangen ... Ich bin sicher, dass es etwas simplisitic ist. Ich habe versucht, dies zu beheben, indem Sie die Dokumentation verwenden, aber ich komme nirgendwo hin ...

+0

Können Sie Ihre gulpfile oder den entsprechenden Abschnitt bereitstellen. Es sieht so aus, als ob es sich um ein Pfadproblem handeln könnte. –

+0

@MarkWilliams Dies ist die einzige Komponente, die dieses Problem hat. Meine 'index.js' Datei enthält:' import TickerTrader von '.components/tradingdesk-ticker'; 'wobei sich die obige Klasse in einer Datei mit dem Namen' tradingdesk-ticker.js' im Ordner 'src/components' befindet. Nicht sicher, warum das nicht funktioniert ... –

+0

@MarkWilliams Wenn das hilft schlucken spuckt diese Fehler aus: '4:26 Fehler Pfad zu Modul '.components/tradingdesk-ticker nicht auflösen' import/no-unaufgelöst 4: 26 Fehler Fehlende Dateierweiterung für ".components/tradingdesk-ticker" Import/Erweiterungen 6: 1 Fehler Erwartete Ausnahme Block, Leerzeichen oder Tab nach '//' im Kommentar spaced-comment' –

Antwort

0

Überprüfen Sie Ihre Dateipfade.

Cannot find module '.components/ticker-trader' from '/.../src'

das falsch aussieht.

Anstelle von .components/ticker-trader sollte mehr als wahrscheinlich nach ./components/ticker-trader suchen.

+0

Das hat dieses spezielle Problem behoben. Ich muss möglicherweise ein neues Ticket öffnen, weil ich einen neuen Fehler habe - "Unerwartetes Token (14: 6) beim Analysieren der Datei:/Users /.../ src/components/tradingdesk-ticker.js". Irgendwelche Ideen? –

+0

Ich habe jetzt den Syntaxfehler gesehen, es sollte kein Komma nach 'this.setState (data)' geben - wirklich grundlegende Dinge, die ich sehen sollte. Entschuldigung. –

Verwandte Themen