Реагируйте на innerHTML с помощью setTimeout

Это связано с общим рабочим процессом Git. Вероятно, вы вряд ли сможете напрямую перейти в основной репозиторий проекта. Я не уверен, что в репозитории проекта GitHub поддерживается управление доступом на основе ветвей, поскольку вы не хотели бы предоставлять кому-либо разрешение на то, чтобы нажать на главную ветку, например.

Общий шаблон выглядит следующим образом:

  • Заставьте исходный репозиторий проекта иметь свою собственную копию GitHub, после чего вам будет разрешено нажимать изменения.
  • Клонировать репозиторий GitHub на вашем локальном компьютере
  • Необязательно добавьте исходный репозиторий в качестве дополнительного удаленного репозитория в вашем локальном репозитории. Затем вы сможете получать изменения, опубликованные в этом репозитории.
  • Внесите ваши изменения и ваши собственные локальные записи.
  • Нажмите свои изменения в репозиторий GitHub (как вы обычно выиграли «У вас есть права на запись в репозиторий проекта напрямую».
  • Обратитесь к сопровождающим проекта и попросите их получить ваши изменения и просмотреть / слить, а также позволить им вернуться в репозиторий проекта (если вы и их захотите).

Без этого для публичных проектов довольно необычно позволять кому-либо прямо нажимать свои собственные коммиты.

0
задан barbsan 18 January 2019 в 11:36
поделиться

2 ответа

Управляя необработанным DOM, вы подрываете способность React оптимизировать рендеры. В приведенном выше случае вы можете легко установить значение из состояния вашего компонента, вызвав setState по истечении времени ожидания. расширенный атрибут ref, который будет проходить через элемент при его создании, а не использовать селектор запросов, который должен будет проходить через весь DOM Но нет необходимости делать это в случае, представленном выше.

<h1 ref={(ref) => {this.h1Ref = ref}}>{this.state.text}</h1>

0
ответ дан Carl Pryke 18 January 2019 в 11:36
поделиться

Я имею в виду, что если вы используете React, вам следует отказаться от необработанных манипуляций с DOM (за исключением нескольких случаев), обычно это плохая идея.

Плюс вы можете легко сделать это, используя реактивный декларативный шаблон:

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

    this.state = {
      text: 'my text'
    };
  }

  componentDidMount () {
    setTimeout(() => {
      this.setState({ text: 'my updated text' });
    }, 3000);
  }

  render () {
    return <h1>{this.state.text}</h1>;
  }
};
0
ответ дан Saraband 18 January 2019 в 11:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: