Taille et Performance
- @monaco-editor/react:
@monaco-editor/react
peut avoir une empreinte plus grande en raison de ses fonctionnalités riches et de sa personnalisation, mais elle est optimisée pour les performances, surtout si vous chargez des langages et des fonctionnalités au besoin. - react-monaco-editor:
react-monaco-editor
est plus léger et rapide à charger, ce qui le rend adapté aux applications où la performance et le temps de chargement sont critiques.
Personnalisation
- @monaco-editor/react:
@monaco-editor/react
offre une personnalisation approfondie, y compris la possibilité d'ajouter des thèmes, des langages et des fonctionnalités personnalisées. Il prend également en charge l'intégration de plusieurs langages et la personnalisation des règles de coloration syntaxique. - react-monaco-editor:
react-monaco-editor
permet une personnalisation de base, mais elle est plus limitée par rapport à@monaco-editor/react
. Il est conçu pour être simple à utiliser avec des options de configuration minimales.
Documentation et Support
- @monaco-editor/react:
@monaco-editor/react
dispose d'une documentation complète et d'une communauté active, ce qui facilite la recherche d'aide et d'exemples pour l'intégration et la personnalisation. - react-monaco-editor:
react-monaco-editor
a une documentation décente, mais elle peut ne pas être aussi exhaustive que celle de@monaco-editor/react
. Il est soutenu par une communauté plus petite.
Exemple de Code
- @monaco-editor/react:
Exemple d'intégration de
@monaco-editor/react
import React from 'react'; import { MonacoEditor } from '@monaco-editor/react'; const MyEditor = () => { return ( <MonacoEditor height="400" defaultLanguage="javascript" defaultValue="// Écrivez votre code ici..." options={{ selectOnLineNumbers: true, automaticLayout: true, }} /> ); }; export default MyEditor;
- react-monaco-editor:
Exemple d'intégration de
react-monaco-editor
import React from 'react'; import MonacoEditor from 'react-monaco-editor'; const MyEditor = () => { const editorDidMount = (editor) => { console.log('L’éditeur est prêt !', editor); }; return ( <MonacoEditor width="800" height="400" language="javascript" theme="vs-dark" value="// Écrivez votre code ici..." editorDidMount={editorDidMount} /> ); }; export default MyEditor;