
Дмитрий
15.01.2017
21:26:52
но раньше чем через пару месяцев я до этого всяко не дойду

Eugene
15.01.2017
21:32:32
сейчас можешь попробывать реакт, хочешь подольше разбираться angular, только не копипасти гайды с кофескриптом, переводи хотя бы на чистый
дойдёшь до spa
позвони

Google

Nikolay
15.01.2017
21:34:47
это оксюморон
SPA должно быть полностью отдельным и независимым
это обычное клиентское приложение
если его не связывать с рельсами, то гораздо проще
потому что куча материалов и ты не мешаешь консерны
хочешь заниматься спа – делаешь спа, хочешь рельсами – делаешь апишку
можешь делать спа вообще без своего апи, а клиент для какого-нибудь твиттера

Дмитрий
15.01.2017
21:38:09
Я предполагаю, что учиться нужно в итоге на сложных задачах

Nikolay
15.01.2017
21:38:24
чему?

Дмитрий
15.01.2017
21:38:52
рельсам ну и вобше fullstack разработке в частности

Nikolay
15.01.2017
21:40:17
во-первых, забей на фуллстек, это гиблое дело
ты никогда не будешь хорошим фронтом, занимаясь этим в фоне, там полный пиздец

Google

Nikolay
15.01.2017
21:40:50
а если ты занимаешься фронтом, то тебе нет смысла лезть в бэк

Дмитрий
15.01.2017
21:41:03
я знаю, регулярно за алкоголем, знакмые фронты плачутся :)

Nikolay
15.01.2017
21:41:08
но если захотел быть фуллстеком, то лучше учи и то, и другое независимо друг от друга
по моему мнению
потому что миры достаточно сильно разделены
и связывая их вместе получается то, что у дьячука в проектах
приходят потом фронты в рельсовые проекты, когда разрастается бизнес и плачутся, что ничего нельзя сделать нормально, не переписывая с нуля

Дмитрий
15.01.2017
21:45:49
что-то такое в планах и есть - рельсо приложенька - это тупо бизнес логика + апи для фронта, а фронт отдельно уже
при таком раскаде же, получается, что они не сильно связаны?

Artur
15.01.2017
21:54:48
Правила у нас тут сложные, и я их не знаю, можете счесть за рекламу. Антон Давыдов и еще один чувак запилили канал в телеграме со всякими руби штуками. Делюсь ссылкой
https://telegram.me/rubynontrivial

Nikolay
15.01.2017
22:19:04

Alex
15.01.2017
22:36:33
ну ну

Антон
15.01.2017
22:37:16

Valentin
15.01.2017
22:44:33
А никто не видел туториалов по тому как с 0 до деплоя работать с Rails API + React?

Alex
15.01.2017
22:45:26
а что конкретно не понятно?

Valentin
15.01.2017
22:47:03
С момента когда у меня есть API и мне нужно прикрутить к нему React.
Вообще, интересно посмотреть как проект должен выглядеть в этой связке, а не какой-то конкретный случай.

Alex
15.01.2017
22:51:17
стоп
что значит прикрутить?

Google

Alex
15.01.2017
22:51:40
зачем фронт и бэк связывать?

Valentin
15.01.2017
22:55:49
и вот где-то здесь у меня уже начинается помутнение. :)
вот разъясните, если можно. какая разница между тем, что бы установить гем с реактом и чтобы сделать api и (честно говоря не знаю как оно должно все работать и как там все связано) с помощью nodejs и react'a делать запросы в api и обновлять страницу.

Alex
15.01.2017
22:57:59
Потому что если их друг в друга смешиваешь, то этим становится трудно управлять.
плюс, гемы вроде как не позволяют 100% SPA делать, там косяки с пререндером и meta тэгами.
Хорошая схема - держать фронт и бэк в одном репозитории (если проект не большой) но в разных папках.
т.е есть гит репозиторий, в нем две папки - frontend, backend
таким образом они могут быть связаны единой гит историей, и не будет рассинхронизации между апи бэканда и фронтенда.
при этом архитектурно они друг от друга будут отвязаны.
Засовывать реакт в assets pipeline это буээ.

Valentin
15.01.2017
23:00:35
любят папку в rails проекте делать "client" в большинстве репозиториев вижу такое

Alex
15.01.2017
23:01:19
можно и так, лишь бы их друг с другом не смешивать
по мне так подпапка client неудобна, но это моя вкусовщина.

Alex
15.01.2017
23:01:39
фронту незачем в бэк лезть, бэку во фронт.

Valentin
15.01.2017
23:04:14
ну, а если вникнуть в технические детали?
то мы что-то типа nodejs проекта создаем с react js (с nodejs не работал, не знаю что и как там) и поднимаем на одном порте, а на другом rails api? и потом как-то делаем запросы на rails api(думаю в гугле примеров много как react с api работает)?

Alex
15.01.2017
23:04:34
nodejs это бэкенд
хотя технически да, ты через ноду запускаешь систему сборки, тот же webpack

Nikolay
15.01.2017
23:04:55
если тебе нужна для этого нода, то ты все правильно описал
но фронт может и нджинкс отдавать

Alex
15.01.2017
23:05:18
nginx в девелопменте ?

Nikolay
15.01.2017
23:05:19
если тебе не нужен сервер сайд рендеринг и тд

Google

Alex
15.01.2017
23:05:41

Nikolay
15.01.2017
23:05:44
но я не шарю

Valentin
15.01.2017
23:05:47

Alex
15.01.2017
23:06:01
через ноду работает система сборки
которая тебе js бандл выдает

Valentin
15.01.2017
23:06:36
а webpack сам, без nodejs, никак?

Alex
15.01.2017
23:07:06
webpack это javascript
на чем ты его будешь запускать если не движком ноды под который он заточен?
не, если делаешь SPA на реакте то даже не думай юзать assets pipeline

Admin
ERROR: S client not available

Valentin
15.01.2017
23:08:09
ааа, окей. картинка складывается. больше ничего не нужно? там же миллион зависимостей, ещё должно быть, как я вижу по разным readme

Alex
15.01.2017
23:08:46
миллион зависимостей чего?
ты систему сборки сам будешь собирать
поставишь вебпак, подымешь dev сервер и т.д
можно глянуть в create-react-app (но он слабый говорят)
а так ты будешь системе сборки сам все зависимости ставить, и системе сборки их указывать.
Там вообще разных подходов миллион.

Valentin
15.01.2017
23:09:56
вот вроде бы у него нашёл
npm install -g eslint-config-react-app@0.3.0 eslint@3.8.1 babel-eslint@7.0.0 eslint-plugin-react@6.4.1 eslint-plugin-import@2.0.1 eslint-plugin-jsx-a11y@2.2.3 eslint-plugin-flowtype@2.21.0

Alex
15.01.2017
23:10:14
у него это у кого?

Valentin
15.01.2017
23:10:23
create-react-app

Google

Alex
15.01.2017
23:10:24
это линтер
это линтер, лол
эта штука тебе будет подсвечивать огрехи в твоем коде и за кодстайлом следить
как настроишь опять же, весь js это сборище велосипедов с DYI.

Valentin
15.01.2017
23:11:56
подсвечивать огрехи? это на каком этапе это будет происходить?
что-то типа рубокопа для js?

Alex
15.01.2017
23:12:37
да, он самый
на каком этапе? как настроишь
можно поставить плагин к редактору чтобы он этот линтер сам гонял постоянно
также как и с рубокопом.

Valentin
15.01.2017
23:14:27
ага окей, ну вот я хотя бы картину вижу более-менее. как все должно работать, а то в голове набор инструментов, а как они связаны, вообще не понятно.
спасибо большое.

Alex
15.01.2017
23:15:14
nodejs - js движок который позволяет запускать какие то js скрипты не в браузере
например тот же webpack
Также можно написать js скрипт простой который поднимет webpack-dev-server
таким образом у тебя система сборки есть которая отдает index.html и бандлы, и прочие ассеты.
опять же, как настроишь.
Дальше рядом запускаешь rails-api сервер
все, просто делаешь запросы с фронта на бэк. Он на отдельном порту висит.

Nikolay
15.01.2017
23:18:35

Alex
15.01.2017
23:18:44
Щито?

Nikolay
15.01.2017
23:18:51
ну типо dev