我是Angular的新手,请帮助。

我有两个组件..一个用于索引,一个用于导航。

对于索引组件,存在子组件,这些子组件将通过变量productDivision的值进行更改。因此,如果productDivision = 1,则子组件(A)将显示在索引中,如果productDivision = 2,则子组件2将显示在索引中。显示而不是1。

因此,我需要的是...如果单击导航栏上的一个元素,我希望更改产品部门的值..以便在索引中显示不同的子组件,这是我的代码。
所以我怎么能从HTML中获取productDivision变量的新值并将其分配给ts作为变量的新值

导航栏组件:html:

<nav id="nav-icons">
    <a class="nav-icon-home" (click)="prodProvision === null; detectProductDivision() " routerLink="/">
      <span class="nav-icon"></span><br />
      Telefon
    </a>
    <a class="nav-icon-mobile" (click)="prodProvision === 1 ;detectProductDivision()" routerLink="/" >
      <span class="nav-icon"></span><br />
      Mobil
    </a>

    <a class="nav-icon-phone" (click)="prodProvision === 2; detectProductDivision()" routerLink="/">
      <span class="nav-icon"></span><br />
      Fax
    </a>


导航栏

  import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';

    @Component({
      selector: 'app-navbar',
      templateUrl: './navbar.component.html',
      styleUrls: ['./navbar.component.css']
    })
    export class NavbarComponent implements OnInit {
       public productDivision: number;
         public prodProvision;
        @Output() public navbarEmitter = new EventEmitter();
      constructor() { }
        detectProductDivision() {
            this.navbarEmitter.emit(this.prodProvision);
        }

      ngOnInit() {
      }
    }
    }

最佳答案

我不知道我是否理解正确,但是可以通过click函数传递值:

(click)="myClickFunction(valueThatIwantToPass)"


如果这不能解决您的问题,请扩大您的问题,以便为您提供更好的答案,谢谢!

关于javascript - 从html到ts的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51288175/

10-12 13:11