Estoy tratando de implementar el ejemplo "RichEditor" proporcionado por Facebook en mi proyecto. Aquí está el código:
import React from 'react; import { Component } from 'react'; import { Editor, EditorState, RichUtils } from 'draft-js'; import { Map } from 'immutable'; 'use strict'; const { Editor, EditorState, RichUtils } = Draft; //rest of the code... Cada vez que intento compilar usando webpack-dev-server , recibo el siguiente error. Revisé StackOverflow para ver si algún otro usuario encontró un error exacto. Pero, no pude encontrar uno.
Module Build Failed: Duplicate Declaration "Editor" 'use strict'; > const { Editor, EditorState, RichUtils } = Draft; export class ...{}¿Dónde me estoy equivocando?
Nota: Soy nuevo en ReactJS.
Estás importando Editor arriba, y luego también lo estás definiendo nuevamente cuando estás desestructurando Draft .
O necesita alias Editor en la importación de draft-js como este:
import { Editor as DEditor, EditorState, RichUtils } from 'draft-js'; Desde aquí, usaría Deditor en lugar de Editor . Entonces sería libre de nombrar el Editor de const a continuación...
O simplemente no desestructurar el objeto Draft a continuación.
En lugar de const { Editor, EditorState, RichUtils } = Draft; , acceda a la propiedad de Draft con sintaxis de punto. es decir, Draft.Editor , Draft.EditorState , etc...
Además, este error de declaración duplicada ocurre si está importando una importación predeterminada predefinida con el mismo nombre que un componente en otro lugar de sus importaciones.
Ejemplo:
import bla from 'react-bla'; ://more imports ://more imports import bla from '../Components/bla/bla';