import ScrollArea from 'react-scrollbar'
import UserList from './components/UserList'
class App extends Component {
addUser = (e) => {
this.scrollArea.scrollBottom();
}
render() {
return (
<ScrollArea ref={(ref) => this.scrollArea = ref}>
<UserList />
</ScrollArea>
)
}
}
this.setState({ screen: <Random key={Math.random()} /> });
class UpdateStatusMark extends Model {
// ....
public function save() {
// ищем все связанные модели
$transaction = Yii::$app->getDb()->beginTransaction();
try {
$carMark->save();
$carModel->save();
$carSerie->save();
$transaction->commit();
} catch($exception) {
$transaction->rollback();
// пишем в лог
// throw
}
}
}
- не знаю как правильно обрабатывать и контролировать состояние AJAX запросов (на одной странице их может быть несколько) - как я теперь понимаю, нужно использовать PROMISE (но пока не понял, как это работает - достаточно сложно воспринять)
- много данных храню на стороне клиента в глобальных переменных. С одной стороны, сейчас это делает отклик быстрее, но с другой я не хочу сломать браузер, когда данных станет больше, кроме того, сейчас думаю, что правильнее было бы иметь на клиенте только те данные, которые нужны только здесь и сейчас.
- фактически view совмещен с контроллером, из-за этого уже сейчас сложно работать с файлами контроллеров - они разрастаются и содержат много html - кода. Кроме того, они завязаны на глобальные данные, про которые я уже писал и получается, что ни о каком модульном подходе не приходится говорить. Как от этого избавиться при текущей архитектуре не знаю.
- практически все данные и весь код приложения доступен и открыт через консоль браузера (можете сами посмотреть). В том числе видна вся структура приложения - можете сами посмотреть. Можно ли что-то с этим сделать я не знаю.
- не знаю, как реализовать какую-то единообразную схему обработки ошибок в приложении, без дублирования кода. Чтобы все скрипты вдруг не валились, если где-то что-то сломалось. То же самое и про единнообразную обработку AJAX запросов (знать когда все запросы исполнились и т.п.)
- проблема с навигацией и индексацией из-за AJAX (сейчас вроде как уже понял, что нужно использовать pushState)
- что делать и нужно ли что-то делать для тех, кто не использует JS. Например те же рекомендации по SEO для AJAX говорят что для всех динамических страниц нужно иметь статический snapshot. Как его реализовать - чтобы это было "дешево (просто) и сердито (не криво)" я не знаю.
В целом мое желание сейчас - понять, как переделать приложение так, чтобы его потом можно было без боли поддерживать, расширять и чтобы оно работало стабильно и единнообразно.
#!/bin/bash
/ПУТЬ ДО ПРОЕКТА/yii test/index
* * * * * /bin/bash /ПУТЬ ДО ПРОЕКТА/scripts/НАЗВАНИЕ ФАЙЛА