@angular2Эта группа больше не существует

Страница 4 из 179
Andrew
02.08.2016
07:08:22
https://www.youtube.com/watch?v=6NRkZHjDOw0

вот вкратце как работает sails

Построен на express, похож на ruby on rails по архитектуре,

Google
Andrew
02.08.2016
07:13:55
При старте сервера генерируется папка .tmp/public - в нее копируется все содержимое папки assets, то есть js, css, .... Но html страница которая отображается методом res.view("путь_в_папке_view"); настроенного в роутере контроллера нигде не имеется, рендерится на лету

поэтому cli проект если сгенерирует в одной папке, мы его не отобразим

Dmitry
02.08.2016
07:49:51
так а нужен на выходе SPA ?

sails станет чисто апишкой для данных ?

Andrew
02.08.2016
07:51:08
Да

По факту не совсем, нужна страница входа (логина) обычная Sails

Он ее рендерит, на ней практически нет JS, и нет Angular, при успешном логине он рендерит другую страницу, которая как раз использует Angular

С первым ангуларом это было проще простого

kaflan
02.08.2016
07:55:36
а со вторым какие сложности? написал компонент который отрабатует и все

Andrew
02.08.2016
07:55:50
Подскажите одну вещь, вот ручками, что бы по канонам подключить его фронтенд библиотеку без запуска лишних скриптов / серверов, допустим папка с node_modules и сорцы копировались в .tmp/public и доступны по адресу localhost:1337/app/main.js | app.component.js и т.п. Мне достаточно ли будет подключить в одной странице, которая станет SPA, библиотеки (их порядок и точный список везде различается от источника к источнику) и запустить System config, после чего System.import и все?

подключить его *как фронтенд библиотеку

Alexey
02.08.2016
07:56:28
бло

не туда извиниюсь)

Google
Anthony
02.08.2016
07:59:33
@imload а что мешает тебе при запуске бэкенда запускать какой-нибудь gulp-task и билдить ангуляр-апп в .tmp/public ? А страницу логина разруливать серверными роутами

Andrew
02.08.2016
08:17:52
Если через Cli билдить, как поменять папку назначения с dist на ../.tmp/public

?

Ищу конфиг

Maksim
02.08.2016
09:32:16
Там в корне js

cli-build-чтототам

Nikita
02.08.2016
09:32:46
всем привет

Maksim
02.08.2016
09:32:47
Расширение js

Внутри создается angular2app

И задаются его опции

Вот там можно задать все что угодно, или переопределить через прототайп

Опции от туда попадают в embercli

На базе нее работает ангуляр кли

По-моему тебе интересно destDir

Я на обеде, скоро вернусь в офис и смогу точно сказать, если сам не найдешь

Andrew
02.08.2016
10:03:08
Спасибо большое

Кто нибудь собирает gulp'ом?

Для использования jade, less, компиляции typescript

Или можно как то объединить с clil build

Google
Alexey
02.08.2016
10:11:05
я настроил сборку less в cli, немного костыльно но работает

var compileLess = require('broccoli-less-single'); var mergeTrees = require('broccoli-merge-trees'); ... module.exports = function(defaults) { var appTree = new Angular2App(defaults, { vendorNpmFiles: [ 'systemjs/dist/system-polyfills.js', 'systemjs/dist/system.src.js', 'zone.js/dist/**/*.+(js|js.map)', 'es6-shim/es6-shim.js', 'reflect-metadata/**/*.+(ts|js|js.map)', 'rxjs/**/*.+(js|js.map)', '@angular/**/*.+(js|js.map)', 'ng2-translate/**/*.+(js|js.map)', 'ng2-bootstrap/**/*.+(js|js.map)', 'codemirror/**/*.+(js|js.map)', 'moment/moment.js', 'font-awesome/**/*', 'flag-icon-css/flags/**/*' ] }); var less = mergeTrees(_.map(['common.less', 'app.less'], function(sassFile) { return compileLess([__dirname + '/less'], sassFile, sassFile.replace(/.less$/, '.css'), { paths: ['.', 'node_modules'] }); })); return mergeTrees([appTree, less], { overwrite: true }); };

код для пробрасывания кастомных билд-параметров даже показывать не хочу, броколи ужасен(

Andrew
02.08.2016
10:18:26
ng build все запускает? в чем преимущества перед gulp (и есть ли они)? можно же через cli управлять приложением, создавать компоненты и т.п. запускать тесты, а билдить галпом?

Alexey
02.08.2016
10:19:44
> ng build все запускает? да

gulp я бы вообще не использовал, зачем он сейчас когда есть более удобный вебпак

для локальной разработки все равно нужен вебсервер, желательно с live reload, в вебпак и cli они встроены

ну и держать одновременно webpack и cli тоже не вижу смысла когдо можно обойтись одним cli

или уж одним вебпаком

Andrew
02.08.2016
10:40:23
Gulp же легкий, настройка лайврелоада там занимает три строки, какие есть причины уйти от Gulp ?

Алексей
02.08.2016
10:41:05
ng build все запускает? в чем преимущества перед gulp (и есть ли они)? можно же через cli управлять приложением, создавать компоненты и т.п. запускать тесты, а билдить галпом?
в AngularCli - используется Brocolli - преимущество в том что Brocolli умеет работать с JSPM пакетами - а это позволяте делать честный Treeshake ( удалять из сборки то что реально не используеться )

Alexey
02.08.2016
10:42:16
ну это до поры до времени, тут писал кто-то что cli переедет на вебпак в скором времени

Andrew
02.08.2016
10:42:36
официально или слухи

https://github.com/angular/angular-cli/issues/116

вроде сказано нет планов на webpack

Хотя есть ветка angular-cli-webpack.. https://github.com/angular/angular-cli/tree/webpack

Алексей
02.08.2016
10:45:08
не будет этого - они будут поддерживтаь возможность работать на webpack - о переходе на вебпак пока никто не говорит ( хотя учитывая наличия бранча - это вполне вероятно - хотя мне кажеться более вероятно что будет выбор - мол броколли или вебпак ) Brocolli не такой уж и сложный и ужасный - нужно его просто немного подучить https://github.com/jalada/broccoli-jspm-jsx-jade-sass-example/blob/master/Brocfile.js

Alexey
02.08.2016
10:46:42
возможно

в любом случае точно не gulp-ом я бы советовал собирать проекты

Алексей
02.08.2016
10:47:46
да - gulp давно устарел в качестве bundler-а

Google
Alexey
02.08.2016
10:48:13
простой пример, нужно подключить font-awsome

там есть css/less/saas с относительными путями к файлам шрифтов

otf/eot и т.д

как это нормально подключить гулпом я не знаю

в вебпаке достаточно прописать лоадер для шрифтов и они все подхватятся, переместятся в ваш dist/ и в css урлы будут до них разреловлены

автоматически

Andrew
02.08.2016
10:49:53
круто

Значит либо webpack либо брокколи

Sergey
02.08.2016
10:50:44
Хм. Сам ng2 по сути статичен

чем ты там отдашь html вообще значения не имеет

главное, чтобы пути были прописаны правильно

Алексей
02.08.2016
10:51:14
как это нормально подключить гулпом я не знаю
у gulp есть плагины для всего этого - но их конечно немного дольше настраивать - ибо они императивны

Sergey
02.08.2016
10:51:37
если ты юзаешь System.js, то тут и кроется жопа

он настраивается очень сложно

т.е. там вот эти map за это все отвечают

Alexey
02.08.2016
10:52:19
в этом и разница, с вебпаком нет дополнительного императивного кода что откуда взять куда положить, ваш исходный код сам является достаточным билд конфигом

Sergey
02.08.2016
10:52:25
и нужно правильно пробросить куда ему можно за ними ходить

Maksim
02.08.2016
10:52:55
он настраивается очень сложно
Если один раз понять то все становится просто

Sergey
02.08.2016
10:53:01
Если один раз понять то все становится просто
Да, это уже потом, но в начале это такой себе ад

Google
Sergey
02.08.2016
10:53:50
И да, скоро cli будет на webpack2, так что думаю его и стоит заюзать для сборки

Alexey
02.08.2016
10:54:53
@matochu А ты в проде все модули через system.js грузишь по запросу?

Sergey
02.08.2016
10:57:05
Нет, я собираю через systemjs-builder

в dev у меня отдельно собирается только lib.js, а код из app/ собирается typescript

Alexey
02.08.2016
10:58:32
ну cli бы тебе помог, т.к он все это сам делает

там тоже вроде systemjs-builder под капотом

Sergey
02.08.2016
10:58:48
Когда я это настраивал cli не было

Да, я смотрел. Но я уже разобрался и настроил под себя.

Когда они перелезут на webpack, вот тогда я на него посмотрю

Алексей
02.08.2016
11:03:09
Offtopic: у кого будут проблемы с обновлением angular cli - не забудьте прочитать https://github.com/angular/angular-cli#updating-angular-cli

Andrew
02.08.2016
11:04:59
А что там про ng init ?

Проверяет файлы

Алексей
02.08.2016
11:06:17
ng init провериряет автогенерированные файлы ( но ng-init нужно вызывать только если angular-cli ставил без -g флага )

Страница 4 из 179

Эта группа больше не существует Эта группа больше не существует