Exportieren von Funktionen mit reactjs und babel
Habe ich ein Projekt mit reactjs, die transpiled von babel. Ich benutze die es2015 und reagieren, verwandelt sich in meinem .babelrc
. Ich bin derzeit die Umgestaltung und in meinem ersten Durchgang habe ich im Prinzip hast export class foo
für alles, was ich brauchte. Eine Menge von diesen Klassen sollte wirklich nur Funktionen, so bin ich versucht, zu umschreiben, Sie auch als solche, aber ich bekomme immer den gleichen Fehler. Meine Hauptanwendung Datei sieht etwas so:
import React, { Component } from 'react';
import {Foo, Bar} from './components/ui.js';
class Application extends Component {
constructor(props){
super(props);
this.state = {
object: null
}
}
componentDidMount(){
//code
}
componentDidUpdate(){
//other code
}
render(){
return(
<div>
<Foo />
<Bar />
</div>
)
}
}
module.exports = Application
Und mein import aus ui.js
ist wie folgt:
import React, { Component } from 'react';
export class Foo extends Component {
constructor(props){
super(props);
}
render() {
return (
//Some JSX
)
}
}
export class Bar extends Component {
constructor(props){
super(props);
}
render() {
return (
//Some other JSX
)
}
}
Wenn ich versuche, und ändern Sie diese exportierten Klassen um eine Funktion, zum Beispiel:
//Note: I have tried a variety of syntax such as function, const, etc...
export var Bar {
render() {
return (
//Some other JSX
)
}
}
Bekomme ich die folgende Fehlermeldung:
SyntaxError: Unexpected token <line where I declare a function>
Ich bin nicht sicher, was ich falsch mache, und meine google-Suche nur kommen mit Antworten auf andere Probleme.
InformationsquelleAutor eignhpants | 2017-06-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es ist die gleiche wie die Definition der Funktion als variable, sondern nur das hinzufügen export der front z.B. (mit ES6-syntax)
oder alternativ
Sie nicht haben die Verwendung von ES6-syntax aber viele Beispiele verwenden ES6 so ist es am besten zu lernen, die äquivalente syntax.
InformationsquelleAutor Chris Herring
Exportieren von Funktionen ist nichts anderes als Export-Klasse. Grundlegende Regeln, die befolgt werden müssen .
Sie können eine explizite import zu . : import AllApp von "./classhouse.jsx";
Siehe das Beispiel unten zeigt mehrere Funktionen zurückgegeben.
Meine index.js Datei:
InformationsquelleAutor Arindam Roychowdhury
Sie schreiben
functional components
im falschen Weg.oder
ES6 nicht erlauben, export Standard-Konst. Deklarieren Sie die Konstante erst dann exportieren.
InformationsquelleAutor vijayscode