Angular 7 Обновление свойства компонента и изменение отображения - PullRequest
0 голосов
/ 15 мая 2019

Я создаю одностраничное приложение с Angular 7. У меня есть компонент приложения, а в компоненте приложения есть мой компонент Nav и мой Router-Outlet. Когда я изменяю значение в одном из компонентов на выходе маршрутизатора, я могу вызвать общую службу, которая затем отправит данные, измененные в мой компонент Nav. Я могу получить данные там, но мне нужно изменить свойство, показывающее (подписывающееся) данные.

Так как я использую выход маршрутизатора и пытаюсь связаться с компонентом nav за пределами этого, событие emit не будет работать, поэтому мне пришлось идти по маршруту службы.

//Component that has item clicked and the click calls the change
//note this component is populated in the router outlet
    onClickSimple(aNumber){
    this.sharedService.doSomething(aNumber);
    }

//the shared service
    doSomething(aNumber) {
        console.log(aNumber); //this works
        this.nav.onNumberChange(aNumber);
      }

// the nav component
      onNumberChange(aNumber) {
        console.log("nav componenet is pass a value of ");
        console.log(aNumber); ///works
        this.currentNumber = aNumber; ///// WILL NOT CHANGE THE VALUE ON THE NAV COMPONENT 
  }

// nav html 
    <li><p style="color:blue;font-weight:bold">Current Number: {{currentNumber}}</p></li>

Я хочу, чтобы this.currentNumber отражал произошедшее изменение, но не делает этого. Пожалуйста, дайте мне знать ваши мысли, если я пропускаю простое исправление или если я должен рассмотреть другой вариант.

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...