Как я могу проверить, что компонент пакета npm загружен в DOM - PullRequest
0 голосов
/ 17 января 2019

Я создал компонент 'Home' в своем приложении и установил пакет - response-ckeditor-component, который предоставляет ck-редактор для включения компонента React.

Я использовал ckeditor из пакета для своего компонента, но когда я загружаю компонент, сначала загружается другое содержимое компонента, но ckeditor занимает некоторое время.

Я хочу найти способ, с помощью которого я могу проверить, что компонент ckeditor загружен в DOM.

Пример -

const React = require('react');
const ReactDOM = require('react-dom');
import CKEditor from 'react-ckeditor-component';

class Home extends React.Component {
  constructor(props){
    super(props);

    //State initialization
    this.state = {
      content: "Hello World"
    };
    this.setContent = this.setContent.bind(this)
  }

  //------ Test for race condition ------ //
  setContent(){
    console.log("Setting content");
    this.setState({
      content: "Hello World " + Math.random()
    })
  }

  onChange(evt){
    console.log("onChange fired with event info: ",evt, "and data: ",evt.editor.getData());
  }

  onBlur(evt){
    console.log("onBlur fired with event info: ",evt);
  }

  afterPaste(evt){
    console.log("afterPaste fired with event info: ",evt);
  }

  render() {
    return (
      <div>
        <button onClick={() => this.setContent()} children='Set content' />
        <CKEditor
          content={this.state.content}
          events={{
            blur: this.onBlur,
            afterPaste: this.afterPaste,
            change: this.onChange
          }}
        />
      </div>
    );
  }
}

ReactDOM.render(
  <Home />,
  document.getElementById('home')
);

Кто-нибудь может мне помочь найти, когда ckeditor загружается в DOM?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...