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

Страница 10 из 179
Maksim
03.08.2016
21:34:47
Они могут хранится где угодно внутри src, на работоспособность это не повлияет

Sergey
03.08.2016
21:35:55
Я сходу просто не нашел информации но видел пример что в эту папку скидывают общие данные для проекта. Спасибо Максим, много полезного подчерпнул, вопросы может и детские но это мой первый js фреймворк )

Maksim
03.08.2016
21:36:54
Смешно, но мой тоже :)

https://angular.io/styleguide#!#04-01

Google
Sergey
03.08.2016
21:36:59
Ага как раз в стайлгайде и находил эту информацию.

Maksim
03.08.2016
21:37:03
Вот тут про структуру

Andrew
04.08.2016
10:26:40
https://marketplace.visualstudio.com/items?itemName=Compulim.vscode-express https://marketplace.visualstudio.com/items?itemName=Compulim.vscode-ipaddress https://marketplace.visualstudio.com/items?itemName=EditorConfig.EditorConfig https://marketplace.visualstudio.com/items?itemName=Pendrica.Chef https://marketplace.visualstudio.com/items?itemName=PeterJausovec.vscode-docker https://marketplace.visualstudio.com/items?itemName=Telerik.nativescript https://marketplace.visualstudio.com/items?itemName=adambaldwin.vscode-nsp https://marketplace.visualstudio.com/items?itemName=alefragnani.Bookmarks https://marketplace.visualstudio.com/items?itemName=alefragnani.project-manager https://marketplace.visualstudio.com/items?itemName=benjaminromano.typings-installer https://marketplace.visualstudio.com/items?itemName=christian-kohler.path-intellisense https://marketplace.visualstudio.com/items?itemName=codezombiech.gitignore https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint https://marketplace.visualstudio.com/items?itemName=donjayamanne.python https://marketplace.visualstudio.com/items?itemName=eg2.tslint https://marketplace.visualstudio.com/items?itemName=felixfbecker.php-debug https://marketplace.visualstudio.com/items?itemName=felixrieseberg.vsc-travis-ci-status https://marketplace.visualstudio.com/items?itemName=fknop.vscode-npm https://marketplace.visualstudio.com/items?itemName=joelday.docthis https://marketplace.visualstudio.com/items?itemName=johnpapa.Angular2 https://marketplace.visualstudio.com/items?itemName=lukasz-wronski.ftp-sync https://marketplace.visualstudio.com/items?itemName=mkaufman.HTMLHint https://marketplace.visualstudio.com/items?itemName=mrmlnc.vscode-csscomb https://marketplace.visualstudio.com/items?itemName=msjsdiag.debugger-for-chrome https://marketplace.visualstudio.com/items?itemName=robertohuertasm.vscode-icons https://marketplace.visualstudio.com/items?itemName=samverschueren.yo https://marketplace.visualstudio.com/items?itemName=steoates.autoimport https://marketplace.visualstudio.com/items?itemName=vsmobile.vscode-react-native https://marketplace.visualstudio.com/items?itemName=wcwhitehead.bootstrap-3-snippets https://marketplace.visualstudio.com/items?itemName=whatwedo.twig https://marketplace.visualstudio.com/items?itemName=wholroyd.jinja https://marketplace.visualstudio.com/items?itemName=wmaurer.change-case https://marketplace.visualstudio.com/items?itemName=xabikos.ReactSnippets
спасибо

Dmitry
04.08.2016
10:57:54
Всем привет, в VS code завезли autoimport?

Алексей
04.08.2016
11:01:33
Пока в виде плагина https://marketplace.visualstudio.com/items?itemName=steoates.autoimport

Dmitry
04.08.2016
11:04:12
чудно, спасибо большое

с ходу не заводится, но хорошо, что улучшают поддержку

кстати, может у кого-нибудь есть туториал как правильно настраивать tsconfig прям от и до, а то постоянно такое чувство, что что-то упускаю

Алексей
04.08.2016
11:12:31
скопипасть из angular cli и меняй по необходимости http://techiejs.com/Blog/Post/Leveraging-tsconfigjson-in-TypeScript-projects а так - информации увы очень мало - вообще tsconfig.json это обертка для опций компилятора https://www.typescriptlang.org/docs/handbook/compiler-options.html Ну и можешь спросить в группе по TypeScript

https://telegram.me/typescriptru

Maksim
04.08.2016
11:22:23
Такой вопрос

Вот есть у меня сервис данных, все через observable

Google
Maksim
04.08.2016
11:23:13
При запросе делается next

Но сейчас понадобилось вернуть только один объект

Как кто это делает?

Вариантов много, интересны ваши

И почему именно так

Алексей
04.08.2016
11:25:04
я видел вот такой способ - this.some.toPromise().then()

Maksim
04.08.2016
11:25:25
Вариант подписываться на все данные и фильтровать - странно имхо

Алексей
04.08.2016
11:26:53
А более правильным будет this.some.subscribe((nextValue) => { // usefull job here this.some.unsubscribe(); });

и помоему можно еще вот так делать ( я правда не проверял ) let subscribtion = this.some.subscribe((nextValue) => { // usefull job here subscribtion.unsubscribe(); });

Andrew
04.08.2016
11:29:43
А более правильным будет this.some.subscribe((nextValue) => { // usefull job here this.some.unsubscribe(); });
Алексей, вставляйте между шестью бэктиками )) код

Sergey
04.08.2016
11:29:57
А что ты для хранения в сервисе используешь?

Andrew
04.08.2016
11:29:57
Вы же так делали)

Интересно, код на глазах появляется )) извиняюсь

Алексей
04.08.2016
11:30:35
Andrew
04.08.2016
11:30:51
тут еще изменять можно?)

Sergey
04.08.2016
11:31:12
это да, можно

Maksim
04.08.2016
11:31:33
Я видимо криво выразился. У меня в сервисе все данные пихаются в next при запросе с сервера. Есть метод load all - это понятно. Но есть метод load, он подгружает один элемент и проталкивает его в общий массив. Далее этот массив опять же проталкивается в next

На деле там на массив а самописный контейнер данных, но это лишние детали, для простоты - массив

Сейчас появилась задача выдавать только один элемент

Есть вариант слушать общий обсервер и фильтровать приходящие данные, но это мне не нравится

Google
Sergey
04.08.2016
11:33:32
next над каким классом? Subject например

Maksim
04.08.2016
11:34:01
Например subject

Sergey
04.08.2016
11:34:15
toObservable().take(1)

будет отдан всегда один и закрыт

Maksim
04.08.2016
11:34:36
Вопрос не о реализации, а о том как кто реализует реактивные сервисы

Нужен не первый, а запрошенный

Запрашивает с сервера объект с конкретным ид

И нужно его получить

Sergey
04.08.2016
11:35:27
а дальше?

Maksim
04.08.2016
11:36:28
Но при этом он должен также попасть в массив всех данных, и этот массив должен быть отправлен в общий обсервер, чтобы не рушить парадигму

Sergey
04.08.2016
11:36:30
Ну просто не очень ясно, там же ты можешь сделать без subscribe, и отдавать фильтрацию

Ох. Ну есть do() - вот тут можешь ловить данные

Maksim
04.08.2016
11:37:12
Тяжело с телефона писать адекватно и развернуто, понимаю что меня сложно сейчас понять

Sergey
04.08.2016
11:37:32
Ну это сервис запросов, а не синглтон с данными?

Maksim
04.08.2016
11:38:04
Да

Sergey
04.08.2016
11:38:20
Тогда он наружу отдает Observable

И перед передачей во вне, накладывает вот эти take, map и прочее

Я бы так делал

И кому нужны данные, уже делают subscription

вот тут можно развернуто спросить

Google
Sergey
04.08.2016
11:40:07
https://gitter.im/dev-ua/FP-FRP

Алексей
04.08.2016
11:40:48
делаем observable на 1 элемент - отдаем наружу но в do() складываем эти элементы в массив сервиса - массив можно забрать уже из метода сервиса win win

Sergey
04.08.2016
11:42:07
Если тебе нужно где-то кэширование на этом этапе, а не напрямую запрос слать. То вот можно использовать внутри сервиса прослойку из subject, в который данные писать, если они у тебя уже есть и отдавать снова toObservable(). А если данные будут позже, то дослать их next()

Maksim
04.08.2016
11:42:48
Короче. Есть сервис который оперирует одним объектом базы данных У него есть методы - LoadAll(), Load(), Delete(), Update(), Create() Этот метод имеет один публичный обсервер - result$. После любой операции с данными туда должен приходить массив актуальных данных. Это реактивность, это логично. Но сейчас мне нужно в одном конкретном месте получить один объект с конкретным ID. Текущая логика функции Load такова, что она получает с сервера объект под ID, записывает его в контейнер данных (массив для простоты понимания), далее этот массив отправляется в result$.next() Вариант как делают почти все - слушают $result и фильтруют пришедшие данные по ID. Мне это не нравится - зачем? Я знаю конкретный объект, я знаю что мне нужно, я его уже получил. Зачем мне еще раз его искать, лишняя нагрузка и вообще бред. Вот я и ищу вариант вернуть 1 эллемент, при этом н ломая парадигму реактивности, чтобы данные как и раньше везде обновлялись когда делаю load.

Sergey
04.08.2016
11:45:02
Ну вот я тебе и описал. result$ вернуть. А что туда положить - это твой мидлвар - есть значение, тогда его. Нет - запрос сервера, тут subscribe и в result$

Maksim
04.08.2016
11:46:03
Тогда result будет в разных ситуациях возвращать разные данные. Это не верный подход

Sergey
04.08.2016
11:46:21
Почему разные?

типа миссив или объект?

Maksim
04.08.2016
11:46:37
Да

Это же нарушает главную фишку

Sergey
04.08.2016
11:46:55
Ну так, тогда тебе нужен еще один метод

Maksim
04.08.2016
11:46:56
Что я в 10 компонентах подписался, и везде юзаю

Вернее в 1 месте меняю

И везде меняется

Sergey
04.08.2016
11:47:39
ну ты сеяас хочешь в CollectionApi положить ObjectApi

Это неверно конечно

Maksim
04.08.2016
11:47:51
Вот

Я и спрашиваю кто бы как это разрулил

Потому что сам понимаю что это тупо

Sergey
04.08.2016
11:48:16
Это должен быть отдельный сервис со своими типами на вход и выход

Google
Sergey
04.08.2016
11:48:41
И как он внутри хитро устроен - это вон выше - про кэширование

Пусть ты будешь в отдельном сервисе хранить пул объектов с запросов колекций, а объект в них искать, а если нет довапрашивать

Там можно и дженерик применить, передавать тип нужного объекта

Maksim
04.08.2016
11:50:41
Ну у меня сейчас это решает класс - контейнер. Он хранит в себе, заменяет, обновляет

Andrew
04.08.2016
11:50:51
Оффтоп, Есть сервис по генерации имен сущностей на основе рукописного ввода предложения в одно легкочитаемое, удобное имя латиницей с camelCase, содержащим весь исходный смысл..

Maksim
04.08.2016
11:50:54
Так оно и есть собственно

Andrew
04.08.2016
11:50:59
Вопрос риторический

Maksim
04.08.2016
11:51:04
С дженкрикос

Sergey
04.08.2016
11:51:23
Так что тебя не устраивает? )

Вон рядом поставь ObjectApi и юзай или этот контейнер, или CollectionApi

Потому что да, с возращаемыми типами просто так не разберешься. Либо новый метод, либо новый класс нужен

Maksim
04.08.2016
11:53:10
Надо его зашарить между двумя сервисами

Sergey
04.08.2016
11:53:30
Ну да

Maksim
04.08.2016
11:55:21
Ну это ладно... Так, а как можно после подписки выкинуть тот же обсервер? Типа return obs.subscribe(..)

Чтобы потом на это можно было сделать еще subscribe

А, это меня плавит уже

Я понял, все ок. Спасибо

Sergey
04.08.2016
11:59:30
На один обсервер - один сабскрипш )

это как lazy, пока нет subscription, ничего не выполняетс

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

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