html и реагировать на компонентную связь редукции [дубликат]

  1. Всегда пытайтесь отправлять заголовки в почтовую функцию.
  2. Если вы отправляете почту через localhost, тогда выполните настройки smtp для отправки почты.
  3. Если вы отправляете почту через затем проверьте, включена ли функция отправки электронной почты на вашем сервере.
20
задан superluminary 11 April 2016 в 09:43
поделиться

4 ответа

Я использовал атрибуты data- для различных реквизитов, затем передал все реквизиты с помощью деструктурирования {...dataset} , например:

HTML:

<div id="app" data-feed='custom_feed.json' data-someprop='value'></div>

JS:

var root = document.getElementById('app');
ReactDOM.render(<X {...(root.dataset)} />, root);

Изменить: демонстрационный скрипт

32
ответ дан pawel 21 August 2018 в 04:59
поделиться
  • 1
    Это хорошо, но как это отличается от getAttribute? – superluminary 11 April 2016 в 13:42
  • 2
    1. Атрибуты data- предназначены для использования для этой цели, а не для создания недействительных атрибутов. 2. Вам не нужно набирать .getAttribute для каждой дополнительной опоры, которую вы хотите передать, все они находятся в dataset , – pawel 11 April 2016 в 13:46
  • 3
    Но тогда вы можете передавать только плоские данные через dataset. Что делать, если нужно передать весь массив / объект? – jayarjo 24 June 2016 в 08:56
  • 4
    @jayarjo можно было бы поместить строку JSON в атрибут data-, но я думаю, что когда дело доходит до большого количества данных, было бы лучше просто напечатать объект в теге <script>, а затем ссылаться на него компонент. – pawel 24 June 2016 в 09:08
  • 5
    Черт возьми, @pawel, я люблю тебя, ты решил мой день! :) :) – Florent Destremau 7 December 2016 в 10:47

Вы можете просто передать свои данные при установке компонента следующим образом:

<div id="root"></div>
<script>
    const data = { foo: 'bar' };
    ReactDOM.render(
        React.createElement(MyComponent, data),
        document.getElementById('root')
    );
</script>
0
ответ дан David Paulsson 21 August 2018 в 04:59
поделиться

React Habitat - это структура, которая облегчает это, если вы хотите что-то многоразовое и расширяемое.

Вы регистрируете компоненты React, такие как

containerBuilder.register(Feed).as('Feed')

Тогда определите цели в HTML, как это, с помощью реквизита

<div data-component="Feed" data-prop-feed-src="/custom_feed.json">

React Habitat проведет их в любое время, когда оно появится в HTML.

Раскрытие: Я являюсь одним из руководители этой структуры.

0
ответ дан jennas 21 August 2018 в 04:59
поделиться

У меня была аналогичная проблема, динамически сгенерированные страницы, содержащие данные, относящиеся к материалам React.

Я просто объявил их в глобальной области.

<script>
  window.foobles = [12,453,12];
  window.bahs = ["bah", "bah", "black sheep"];
</script>

.. THEN ..

ReactDOM.render(
  <Component
    foobles={window.foobles}
    bahs={window.bah}
  />,
  document.getElementById('app')
)

Очевидно, что с точки зрения имен это может иметь некоторые недостатки:)

4
ответ дан Sp4cecat 21 August 2018 в 04:59
поделиться
Другие вопросы по тегам:

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