Я почитал комментарии и заметил, что с вами вести адекватную беседу сложно, так как вы прыгаете с темы на тему. У нас есть проблема, большой список. Ниже вам описали, как решить ее. Вы тут же переходите на обработку данных.
Я бы с радостью обсудил проблемы React, но, увы, мало кто способен на это. Хотелось бы разобрать все по полочкам
Какой смысл в таких статьях, если они быстро устаревают? Куда проще почитать офф. доки нужной либы
Лучше бы раскрыли, какой смысл в Mobx
Мне вот очень нравится Mobx, но смущает его магия. Свободного времени сложно найти на то, что бы разобраться в его магии и разобраться, где стоит использовать мобикс, а где нет. Было бы приятно почитать статью на эту тему
Про async/await чистая ложь
Во-первых, transform-async-to-generator просто заменяет все await на yield и оборачивает функцию в вызов функции co (github.com/tj/co, можно свою реализацию подставить). Также есть asynctogen, с которым нет смысла тащить babel, если других фич не используете
Во-вторых, у вас включен regenerator, и поэтому код страшный
Вы серьезно? Как вообще можно разрабатывать под какую-нибудь платформу, не зная документации? Я считаю, что это статься не достойна главной, так как тут ничего нового для среднего разработчика Node.js не найти
Документация Node.js очень маленькая и простая, потому что Node.js по сути обретка над различными библиотеками, в отличии от PHP, Ruby, Python и других языков, где стандартные библиотеки богаты различными интересными штуками, о которых в документации если и есть что-то, то это нужно хорошенько поискать
Про Babel обманка, здесь у вас включен regenerator, который не очень нужен, если используется firefox > 45 или chrome > 50
Также async/await, генераторы, Promise входят в стандарт ECMAScript, и даже самый передовой async/await доступен в Node 7 и Chrome 55
А сколько кода придется писать, что бы впихнуть $mol_object в React, Vue, Angular2 и т.д.?
Лучше пускай будет +10 строчек читабельного boilerplate-кода, чем какое-нибудь скрытое непонятное нечто
Есть еще Hapi, Sails, Kraken
А еще можно взять роутер из PillarJS и использовать чистый http.createServer()
Мы, в JavaScript мире, всегда имеем выбор, и если не из чего выбрать, то делаем свою игрушку
И нужно ценить выбор других, а не кидаться вопросом "зачем"
И да, против async/await ничего не имею, когда есть возможность, то тыкаю, но это не панацея, так как по сути промисы это красивая обертка над колбеками
Статься хорошая, но очень много мелких недочетов
Например в строке app.use(require(...)) мне захотелось ударить вас :-)
Нужно всегда делать в начале файла const module = require('module') и уже потом использовать его
Каждый require синхронный и, очевидно, блочит весь процесс
Если обновился модуль, то собирается только он сам
Это длится не больше четверти секунды, если модуль очень жирный и от него зависят другие модули
https://webpack.github.io/docs/hot-module-replacement-with-webpack.html
Компилер, парсер, трансплайер, минификатор, статический анализатор JS
Lodash, React, Webpack
В этом нет ничего страшного, это нормально
Поставь с десяток пакетов по ключевому слову React и у тебя вырастит папка node_modules аж на 5 мегабайт!
Иногда стоит запускать npm dedupe и npm prune, что бы удалить дупликаты и выпилить лишние пакеты, от которых ничего не зависит
Пора бы уже научится использовать npm или не использовать его вообще, как и все, что связано с JS
Извиняюсь за ошибки в своем комментарии
github.com/yogurt1/hotux
Boilerplate с процессе разработки, но тут можете увидеть, что вся конфигурация webpack умещается в одном файле на 205 строк
Конфиг универсален для всех сред — клиент, сервер, тесты Karma
В будующем планирую расширить до React Native, Electron и поддержки других библиотек и фреймворков, кроме React
Хуки для импорта компонентов на сервере находятся в файле boot.js
Буду рад пожеланиям и исправлениям
eject и пили свои костыли. Я вот отточил настрою вебпака до идеала и смысла во всех этих бойлерплейтах не вижу, если только не универсальный бойлерплейт, где нужно наворачивать костыли, что бы на сервере можно было сделать импорт стилей и картинок в компонентах
Парсер JS, сборщик JS, компилятор JS, транслятор JS, полифиллы JS, оптимизация JS, минификация JS, украшение JS, сжатие JS
Логирование, работа с сетью, реализация Virtual DOM, библиотека функций Lodas
И еще куча всего, что нужно для работы тех или иных пакетов
Если готов написать свой сборщик JS с HMR и CSS, рад буду использовать
А еще запилил свой аналог React
С Redux можешь не заморачиваться, он мало весит
Я почитал комментарии и заметил, что с вами вести адекватную беседу сложно, так как вы прыгаете с темы на тему. У нас есть проблема, большой список. Ниже вам описали, как решить ее. Вы тут же переходите на обработку данных.
Я бы с радостью обсудил проблемы React, но, увы, мало кто способен на это. Хотелось бы разобрать все по полочкам
Рендер VDOM дешевый. И его можно обойти через sCU
Фреймворк, HTML-шаблоны
Явно автор знает, о чем поветсвует
Какой смысл в таких статьях, если они быстро устаревают? Куда проще почитать офф. доки нужной либы
Лучше бы раскрыли, какой смысл в Mobx
Мне вот очень нравится Mobx, но смущает его магия. Свободного времени сложно найти на то, что бы разобраться в его магии и разобраться, где стоит использовать мобикс, а где нет. Было бы приятно почитать статью на эту тему
"Нативные" промисы очень медленные. Надо брать Bluebird
Про async/await чистая ложь
Во-первых, transform-async-to-generator просто заменяет все await на yield и оборачивает функцию в вызов функции co (github.com/tj/co, можно свою реализацию подставить). Также есть asynctogen, с которым нет смысла тащить babel, если других фич не используете
Во-вторых, у вас включен regenerator, и поэтому код страшный
Вы серьезно? Как вообще можно разрабатывать под какую-нибудь платформу, не зная документации? Я считаю, что это статься не достойна главной, так как тут ничего нового для среднего разработчика Node.js не найти
Документация Node.js очень маленькая и простая, потому что Node.js по сути обретка над различными библиотеками, в отличии от PHP, Ruby, Python и других языков, где стандартные библиотеки богаты различными интересными штуками, о которых в документации если и есть что-то, то это нужно хорошенько поискать
Про Babel обманка, здесь у вас включен regenerator, который не очень нужен, если используется firefox > 45 или chrome > 50
Также async/await, генераторы, Promise входят в стандарт ECMAScript, и даже самый передовой async/await доступен в Node 7 и Chrome 55
А сколько кода придется писать, что бы впихнуть $mol_object в React, Vue, Angular2 и т.д.?
Лучше пускай будет +10 строчек читабельного boilerplate-кода, чем какое-нибудь скрытое непонятное нечто
Есть еще Hapi, Sails, Kraken
А еще можно взять роутер из PillarJS и использовать чистый
http.createServer()
Мы, в JavaScript мире, всегда имеем выбор, и если не из чего выбрать, то делаем свою игрушку
И нужно ценить выбор других, а не кидаться вопросом "зачем"
И да, против async/await ничего не имею, когда есть возможность, то тыкаю, но это не панацея, так как по сути промисы это красивая обертка над колбеками
Например в строке
app.use(require(...))
мне захотелось ударить вас :-)Нужно всегда делать в начале файла
const module = require('module')
и уже потом использовать егоКаждый require синхронный и, очевидно, блочит весь процесс
Красиво, удобно, масштабируемо
Это длится не больше четверти секунды, если модуль очень жирный и от него зависят другие модули
https://webpack.github.io/docs/hot-module-replacement-with-webpack.html
Lodash, React, Webpack
В этом нет ничего страшного, это нормально
Поставь с десяток пакетов по ключевому слову React и у тебя вырастит папка node_modules аж на 5 мегабайт!
Иногда стоит запускать npm dedupe и npm prune, что бы удалить дупликаты и выпилить лишние пакеты, от которых ничего не зависит
Пора бы уже научится использовать npm или не использовать его вообще, как и все, что связано с JS
Ах да, 15 мс на инъекцию во всех другие модули
github.com/yogurt1/hotux
Boilerplate с процессе разработки, но тут можете увидеть, что вся конфигурация webpack умещается в одном файле на 205 строк
Конфиг универсален для всех сред — клиент, сервер, тесты Karma
В будующем планирую расширить до React Native, Electron и поддержки других библиотек и фреймворков, кроме React
Хуки для импорта компонентов на сервере находятся в файле boot.js
Буду рад пожеланиям и исправлениям
Логирование, работа с сетью, реализация Virtual DOM, библиотека функций Lodas
И еще куча всего, что нужно для работы тех или иных пакетов
Если готов написать свой сборщик JS с HMR и CSS, рад буду использовать
А еще запилил свой аналог React
С Redux можешь не заморачиваться, он мало весит
А уже потом «шаблонизатор» и VirtualDOM
И да, есть Preact, React-lite и т.д.