17.05.2015, 13:46
|
|
Профессор
|
|
Регистрация: 23.12.2013
Сообщений: 1,856
|
|
Реактщики, как вы организовываете множество "состояний" одного компонента? Поясню. Допустим, у меня есть компонент Content, который может содержать инфу разного рода(картинки/статьи/списки статей/поля ввода) и нужно показывать что-то одно. Раньше я делал так: создавал отдельные компоненты типа Pictures, Articles, и т.д, и в зависимости от this.state компонента Content внутри него рендерил нужный дочерний компонент. Всё норм, но только вот количество дочерних компонентов стало сильно расти и всё это, как вы поняли, вываливается в глобальную область. Как бы вы поступили в данном случае? Продолжали растить количество компонентов или использовали что-то ещё?
|
|
17.05.2015, 14:15
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Я делал с помощью вот этого https://github.com/rackt/react-router
В нем только одна проблема, не получилось вылезти в wait для других компонентов, если они параллельно прибиндены.
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
17.05.2015, 17:51
|
|
Профессор
|
|
Регистрация: 23.12.2013
Сообщений: 1,856
|
|
Gozar,
спасибо.
|
|
19.05.2015, 17:19
|
|
Кандидат Javascript-наук
|
|
Регистрация: 15.09.2011
Сообщений: 143
|
|
Играюсь с React Native последние две недели, очарован им. До этого пилил свой эпп на Swift в свободное от работы время - разработка шла медленно, вгоняла в уныние. Решил потрогать React Native - и уже на след день принял решение писать эпп на нём. Прогресс разработки очень радует. По сути родной и знакомый JS/React, только вместо DOM - react-компоненты iOS-интерфейса.
Есть крутая возможность написать NativeModule на ObjectiveC/Swift - и потом к нему обращаться из JS. И это дело подключается буквально в пару строчек.
Единственное, что не нравится - это стили свойствами JS-объектов, при этом дочерние элементы ничего не наследуют от стилей родителей. Как-то не изящно оно выглядит.
Но так уже сейчас это на удивление стабильный и мощный инструмент, активно развивающийся (слежу на гитхабе).
P.S. Думаю, что подраздел по React'у на форуме был бы кстати.
|
|
27.06.2015, 11:21
|
|
Профессор
|
|
Регистрация: 23.12.2013
Сообщений: 1,856
|
|
Кто-нибудь использовал React вместе с async/await? Сейчас пытаюсь провернуть такое
class CompName extends React.Component {
getSomeData(url) {
return fetch(url)
.then((res) => {
return res.json().then(json => json)
})
}
async render() {
let content = await this.getSomeData(this.props.url)
return (
// вывод данных
)
}
}
Но при сборке, Babel ругается на async перед методом render(), хотя я указал доп. опцию { optional: ['asyncToGenerator'] } .
Может быть, у кого-нибудь есть предложения на этот счёт?
|
|
27.06.2015, 14:07
|
|
Профессор
|
|
Регистрация: 24.09.2013
Сообщений: 1,436
|
|
А что, реакт позволяет возврат промайза из #render()?
|
|
27.06.2015, 15:21
|
|
Профессор
|
|
Регистрация: 23.12.2013
Сообщений: 1,856
|
|
Erolast,
на сколько я знаю - нет. А разве должен?
|
|
27.06.2015, 18:57
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Сообщение от Safort
|
А разве должен?
|
А разве это не разрушение паттерна React? Какой тогда смысл использовать React?
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
27.06.2015, 19:05
|
|
Профессор
|
|
Регистрация: 23.12.2013
Сообщений: 1,856
|
|
Gozar,
ты вообще про что?) Зачем методу render() возвращать обещание, если он должен возвращать react-элемент?
|
|
27.06.2015, 19:05
|
|
Профессор
|
|
Регистрация: 24.09.2013
Сообщений: 1,436
|
|
Цитата:
|
на сколько я знаю - нет. А разве должен?
|
Конечно. async/await - это сахар над использованием генераторов совместно с промайзами, результат асинхронной функции - промайз.
Последний раз редактировалось Erolast, 27.06.2015 в 19:10.
|
|
|
|