Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Angular2 передача переменной между компонентами 
V
    Опции темы
numerovan
Дата 17.4.2017, 03:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 549
Регистрация: 1.12.2007

Репутация: нет
Всего: 2



Суть следующая:
1. имеем роут /comments , при загрузке этого роута с сервера подгружаются данные
2. имеем роут /comments/:id , на место ":id" подставляется id элемента

Необходимо в роуте /comments/:id использовать данные уже ранее сформированного списка (/comments) и не обращаться на сервер лишний раз. Во втором компоненте не могу вызывать кастомный тег первого, иначе он отображается во втором, хотелось бы просто список подтянуть только.
Создал Сервис, при обращении к сервису подгружаю список и сохраняю в свойстве сервиса и далее, планировал, обращаться только к этому свойству сервиса, но в чем проблема - он обнуляется при переходе между роутами. Что делать?

Код

@Injectable()
export class HttpService {
    comments: Comment[] = [];
......
        loadComments() {
        return this.http.get('/admin/get-json-comments-list')
                        .map((resp: Response)  => this.comments = resp.json())
                        .catch((error: any)    => { return Observable.throw(error._body); });
    }
}


код наверно не обязательно вставлять ... по тексту вроде понятно описал.
PM MAIL   Вверх
numerovan
Дата 24.4.2017, 23:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 549
Регистрация: 1.12.2007

Репутация: нет
Всего: 2



сервис добавить в главный модуль, этот сервис после не добавлять в св-во providers компонентов, при этом он и не будет перезаписываться (не собудь создоваться новы объект).
PM MAIL   Вверх
Google
  Дата 19.9.2019, 22:30 (ссылка)  





  Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Применение библиотек | Следующая тема »


 




[ Время генерации скрипта: 0.1029 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.