Hallo Leute, ich bin neu bei React-Ass, sehr schönes Projekt übrigens, hat mir sehr gut gefallen.
Ich habe eine sehr Noob-Frage, ich habe gerade ein Projekt mit https://github.com/react-boilerplate/react-boilerplate gebootet , react-ace als Abhängigkeit hinzugefügt und alles scheint gut zu funktionieren.
Aber ich erhalte die obige Fehlermeldung auf der Konsole:
_mode-mode.js:1 Uncaught SyntaxError: Unexpected token <_
Es scheint, dass es etwas mit der Webpack-Konfiguration zwischen beiden Projekten zu tun hat? Könnt ihr etwas zu diesem Setup empfehlen?
So verwende ich React-Ace:
import React, { Component } from 'react';
import AceEditor from 'react-ace';
import messages from './messages';
import 'brace/theme/github';
export default class HomePage extends Component { // eslint-disable-line react/prefer-stateless-function
render() {
return (
<div>
<AceEditor
mode=""
theme="github"
onChange={() => null}
name="UNIQUE_ID_OF_DIV"
editorProps={{ $blockScrolling: true }}
/>
</div>
);
}
}
@henviso Sie müssen einen Modus festlegen und diese Themen und Modi separat importieren, wie in der grundlegenden Verwendung in der Readme-Datei https://github.com/securingsincity/react-ace#basic -usage gezeigt.
Bei mir passiert es auch, und ich habe diese Importe deklariert. Das ist mein Code:
import AceEditor from 'react-ace'
import 'brace/mode/python'
import 'brace/theme/monokai'
// ...
<AceEditor
name="ACE_EDITOR"
value={this.props.value}
mode="python"
theme="monokai"
/>
Es funktioniert auch, aber in der Konsole wirft es:
Uncaught SyntaxError: Unexpected token <
python.js:1
Und wenn ich zu dieser Datei gehe, die auf /snippets/python.js
gehostet wird, zeigt sie meine index.html
Ich vermute also, dass ich einige zusätzliche Konfigurationen zum Webpack hinzufügen muss, um das erforderliche JS ( /brace/snippets/python.js
) an einen öffentlichen Ort zu kopieren; mit copy-webpack-plugin
.
Irgendwelche Gedanken?
@fbove Versuchen Sie, import brace from 'brace';
oben sowohl beim Modus- als auch beim Theme-Import zu importieren.
hat bei mir funktioniert.
@fbove Ich habe die gleiche Frage und möchte keinen Text in einer Programmiersprache validieren. Wie kann ich den Modus einstellen?
Ich importiere import brace from 'brace';
, zeige aber immer noch den gleichen Fehler
Ich habe das gleiche Problem und das Importieren von 'Klammer' funktioniert bei mir nicht.
Lösung gefunden: Sie müssen einen Modus angeben, wenn Sie AceEditor verwenden
Hilfreichster Kommentar
@henviso Sie müssen einen Modus festlegen und diese Themen und Modi separat importieren, wie in der grundlegenden Verwendung in der Readme-Datei https://github.com/securingsincity/react-ace#basic -usage gezeigt.