Я не могу получить строковое значение из массива в Angular - PullRequest
0 голосов
/ 25 февраля 2020

Я хочу отобразить departmentName, но я всегда получаю нулевое значение, но я могу получить departmentID, это меня смущает.

template: `
   <h3>
     you selected department with id = {{departmentName}},{{departmentID}} //here only show the ID but cant show the Name,the Name value is null from console that I saw.
   </h3>
export class DepartmentDetailComponent implements OnInit {
  public departmentID;
  public departmentName;

ngOnInit() 
      this.route.paramMap.subscribe((params:ParamMap) => {
        let id = parseInt(params.get('id'));
        let name = params.get('name'); // I think here is the problem why I cant get the name value

        this.departmentID = id;
        this.departmentName = name;

      });
    }
//array from other component

export class DepartmentListComponent implements OnInit {

  public selectedId;

  departments = [
    {"id":1,"name":"Angular"},
    {"id":2,"name":"Node"},
    {"id":3,"name":"Ruby"},
  ]

1 Ответ

1 голос
/ 25 февраля 2020

Наконец, после небольшой корректировки я могу получить значение имени

, это оригинальный путь, и после того, как я добавлю: имя в путь, я смогу получить имя (но я Я уверен, что это не идеальный ответ, так как впоследствии я сталкиваюсь с другой проблемой, любой, у кого есть другой ответ, пожалуйста, не стесняйтесь поделиться им)

{path : 'departments/:id',component:DepartmentDetailComponent}
{path : 'departments/:id/:name',component:DepartmentDetailComponent},

(я добавил значение имени в маршрутизаторе .navigate в списке массивов также)

 onSelect(department){
    this.router.navigate(['/departments',department.id,department.name]);
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...