2017-01-24 2 views
1

Я пытаюсь реализовать пример «RichEditor» предоставленный Facebook в моем проекте вот код:построения модулей Ошибка: Дублированный Declaration «Редактор»

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... 

Всякий раз, когда я пытался построить с помощью webpack-dev-server, я получаю следующая ошибка. Я проверил StackOverflow, чтобы узнать, столкнулся ли какой-либо другой пользователь с точной ошибкой. Но найти его не удалось.

Module Build Failed: Duplicate Declaration "Editor" 

'use strict'; 
> const { Editor, EditorState, RichUtils } = Draft; 

export class ...{} 

Куда я иду не так?

Примечание: Я новичок в ReactJS.

ответ

3

Вы импортируете Editor вверху, а затем вы также определяете его, когда вы разрушаете Draft.

Вам необходимо либо псевдоним Editor в импорте draft-js как это:

import { Editor as DEditor, EditorState, RichUtils } from 'draft-js'; 

Здесь вы бы использовать Deditor вместо Editor. Затем вы можете бесплатно назвать const Editor ниже ...

Или просто не разрушите объект Draft ниже.

Вместо const { Editor, EditorState, RichUtils } = Draft; доступ к собственности Draft с синтаксисом точки. то есть Draft.Editor, Draft.EditorState и т. д.

+0

второй способ помог. Спасибо большое :) –

+0

Рад, что я мог помочь! Похоже, вы новичок здесь, поэтому я упомянул о том, что лучший ответ, который работает как принятый, является стандартной практикой. Это делает очевидным для других, что вам больше не нужна помощь в этом, а также подает точечную систему. – Coder1

Смежные вопросы