Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.12.2014, 18:11
Аспирант
Отправить личное сообщение для Smike Посмотреть профиль Найти все сообщения от Smike
 
Регистрация: 01.06.2014
Сообщений: 33

Слайдер на React.js
Всем привет. В общем есть слайдер, сделанный на реакте. Слайды листаются с определенным интервалом. Необходимо сделать так, чтобы интервал очищался когда пользователь нажимает на sliderbullet и запускался сначала. Код вы можете увидеть здесь http://jsfiddle.net/8zgmqrho/

У компонента Slider есть свойство componentWillUnmount, но я не понимаю где и как надо его вызвать. Помогите пожалуйста, товарищи =)
Ответить с цитированием
  #2 (permalink)  
Старый 20.12.2014, 19:02
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

вот тут пишешь обработчик клика:
Код:
return <SlideBullet classer={i===this.state.curslide?'current-slide':''} slideNumber={i} certainSlide={this.certainSlide}/>
    }.bind(this))
или, вернее, подписываешься на события смены слайдов

и в нём очищаешь интервал

наверное, это метод certainSlide компонента Slider

Сообщение от Smike
componentWillUnmount, но я не понимаю где и как надо его вызвать
таким вопросом не надо задаваться реакт сам вызовет этот lifecycle hook, когда компонент будет отмонтирован от дерева
Ответить с цитированием
  #3 (permalink)  
Старый 21.12.2014, 11:12
Аспирант
Отправить личное сообщение для Smike Посмотреть профиль Найти все сообщения от Smike
 
Регистрация: 01.06.2014
Сообщений: 33

melky,
дело в том, что обработчик клика уже вшит в компоненте SlideBullet. А интервал задан в компоненте Slider.
var labels = Slides.map(function(s,i){
      return <SlideBullet onClick={this.componentWillUnmount} classer={i===this.state.curslide?'current-slide':''} slideNumber={i} certainSlide={this.certainSlide}/>
    }.bind(this))


Можно ли таким образом просто очистить его?
Ответить с цитированием
  #4 (permalink)  
Старый 21.12.2014, 14:37
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от Smike
Можно ли таким образом просто очистить его?
хз, но лучше так не делать.

пробни этот способ - я вынес очищение интервала в отдельный метод и вызываю его в componentWillUnmount и certainSlide
http://jsfiddle.net/8zgmqrho/1/
Ответить с цитированием
  #5 (permalink)  
Старый 21.12.2014, 16:00
Аспирант
Отправить личное сообщение для Smike Посмотреть профиль Найти все сообщения от Smike
 
Регистрация: 01.06.2014
Сообщений: 33

melky,
Огромное спасибо за помощь, помогло.
ЗЫ. раз такое дело, не могли бы вы посоветовать литературку по реакту, или дать пару советов в изучении? =)
Ответить с цитированием
  #6 (permalink)  
Старый 21.12.2014, 17:16
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от Smike Посмотреть сообщение
melky,
Огромное спасибо за помощь, помогло.
ЗЫ. раз такое дело, не могли бы вы посоветовать литературку по реакту, или дать пару советов в изучении? =)
держи две ссылки:

https://github.com/enaqx/awesome-react
http://react.rocks/

этого хватит на первое время

ну а так - по большей части материалов нету, всё только набирает обороты... например, еще до конца не определились с тем, как должен вести себя Flux в случае асинхронных запросов.

ну и приходи сюда, на форум, с вопросами - нет проблем, попробуем помочь
Ответить с цитированием
  #7 (permalink)  
Старый 21.12.2014, 17:54
Аспирант
Отправить личное сообщение для Smike Посмотреть профиль Найти все сообщения от Smike
 
Регистрация: 01.06.2014
Сообщений: 33

Огромное спасибо! До новых встреч =)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно сделать слайдер контента OgecuT Элементы интерфейса 2 23.07.2014 14:31
Новостной слайдер на bxslider malsyst Библиотеки/Тулкиты/Фреймворки 3 02.09.2013 10:32
Слайдер с помощью CSS и jQuery - 1000 р. stixia007 jQuery 21 27.03.2013 22:44
Слайдер с перемоткой в двух разных блоках Джэй jQuery 0 15.10.2012 23:08
jQuery UI Slider - как синхронизировать слайдер со значнием? frightened jQuery 0 24.07.2011 00:19