Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   React'а тред (https://javascript.ru/forum/offtopic/53890-react%27-tred.html)

UIjs 02.05.2015 17:26

Цитата:

Сообщение от Gozar
мусор!

нет не мусор, пруф http://www.youtube.com/watch?v=NbLfDvQsesk

UIjs 02.05.2015 17:35

Erolast, а это для тебя друг https://www.youtube.com/watch?v=k63nnnVXEBs

поучу тебя немного ооп

Erolast 02.05.2015 17:37

Цитата:

нужно костылить че то там с модулями
Если ты считаешь разделение кода на модули костылем - нам не о чем беседовать.

Цитата:

какими то хаками
Нету никаких хаков.

Цитата:

КАКИЕ ТО ПЛЮСЫ
Нативность.

Цитата:

нет, private undefinet извне класса
Неужто берешь toString иницализатора, подменяешь this.privates на замкнутые переменные и прогоняешь это дело через эвал? Чо, скажешь не костыль?

Gozar 02.05.2015 17:40

Цитата:

Сообщение от UIjs
нет не мусор, пруф http://www.youtube.com/watch?v=NbLfDvQsesk

Сохранил себе видео, было смешно. А где я писал, что компоненты в Angular нельзя делать? Напомни. Хотя можно было тебя ещё немного побесить. Цели такой не было, но тебя так забавно плющит :D

ПС: атрибуты мусор! ;) Особенно какие-нибудь левые типа ng- , я уж молчу про ui-, да и data- шлак левый, но что уж поделать, сделали по просьбе ламеров...

Gozar 02.05.2015 17:43

Мне больше идея web-components нравится, жаль что она на первый взгляд(визуально) такая жуткая.

Erolast 02.05.2015 17:48

Цитата:

Сообщение от UIjs (Сообщение 369152)
Erolast, а это для тебя друг https://www.youtube.com/watch?v=k63nnnVXEBs

поучу тебя немного ооп

Ха, я действительно школьник, как ты угадал? :D

Бесишься знатно, да. Поржал.

UIjs 02.05.2015 17:55

Gozar, так она и есть у меня и в ангуляре, разве нет)?

Цитата:

Сообщение от Gozar
атрибуты мусор!

хорошо, видимо я что -то упускаю) и раз после могео обьяснения ты не поменял мнение значит я чего то не знаю, я задам этот заветный вопрос так и быть: почему атрибуты мусор?

Safort 02.05.2015 18:13

nerv_,
Цитата:

Safort, хочешь сказать, ты шаблоны руками пишешь, без движков?) Это же ад)
Почему? Мне норм)

nerv_,
Цитата:

фу, блин, ты на кофе пишешь. Буэээ Даешь es6
+1.

Safort 02.05.2015 18:13

Gozar,
Цитата:

Обычно ajax в componentDidMount.
Цитата:

А ещё нужно знать что можно вешать прослушку на изменение хранилища
Erolast,
Цитата:

Action.
Вот я накатал пример:
class MainComponent extends React.Component {
  constructor() {
    this.state = {
      listComponent: '' // дочерний компонент, содержащий какой-то список. Пустой потому, что пока ещё нет данных
    };
  }

  componentDidMount() {
    let _this = this;

    // подписываемся на изменения в хранилище
    AppStorage.on('change', this.update.bind(_this));

    // отправляем запрос на получение списка элементов
    fetch('./api/list')
    .then((res) => {
      res.json()
          .then((res) => {
            AppStorage.updateList(res); // обновляем хранилище и хранилище само вызывает метод update компонента MainComponent
          });
    });
  }

  update() {
    // обновляемся
    this.setState({
      listComponent: <ListComponent list={AppStorage.getList()}/>
    });
  }

  render() {
    return (
      <aside className="aside">
        {this.state.listComponent}
      </aside>
    );
  }
}



У меня, как вы видите, отсутствуют некоторые части Flux, а именно Dispatcher и ActionCreator. Можете пояснить зачем мне они тут нужны?
Набросал небольшое дополнение
AppDispatcher.register(function(data) {
  switch(data.eventName) {
    case 'update-list':
      AppStorage.updateList(data.params);
      break;
    case 'другое-событие':
      //..
  }
}

let ActionCreator = {
  updateList(data) {
    AppDispatcher.dispatch({
      eventName: 'update-list',
      list: data
    });
  };
};


Если я правильно понял, то преимущество Dispatcher'а в том, что в case'ах можно добавлять не один AppStorage.add(data.params), а множество обращений к хранилищу, так?
А ActionCreator это просто обёртка над методом dispatch() для краткости записи?

И ещё вопросец. Судя по этому комменту http://habrahabr.ru/post/249279/#comment_8255647 запросы к серверу лучше делать из ActionCreator'а или Storage. Можете показать на простом примере как вы это реализовываете(в т.ч. и инициализирующие запросы)?

Gozar 02.05.2015 18:15

Цитата:

Сообщение от UIjs
почему атрибуты мусор?

Захламляют разметку, при этом ничего особо ценного не привносят, потому и мусор. Когда его немного, то терпимо, когда много - визуальная каша ;)


Часовой пояс GMT +3, время: 03:48.