角度6中的值是否不会自动更新?

时间:2018-09-11 11:52:01

标签: angular web-services angular6 angular-observable

我有一个下拉列表,其中包含从数据库中获取的值。值在组件中订阅。 但是,在数据库中添加新的选择选项时,下拉值不会自动更新。

component.html

     <select name="menu_parent"  class="form-control not_chosen">
      <option *ngFor="let menu of resultMenus" value="{{ menu.id }}">{{menu.title}}</option>
    </select>

component.ts

    ngOnInit() { 
        this.data.showMenus()
         .subscribe(data =>{
            this.resultMenus =  data.data;     
          }
      );
    }

服务

   showMenus(){ 
         this.ctrURL    = API_URL+"menu"; 
         var localStore =   JSON.parse(localStorage.getItem('currentUser'));

         headers.append("Authorization", "Bearer " + localStore.token);

          return this.http.get(this.ctrURL,'',{ headers: headers })
             .pipe(map(data => { return data.json(); }));
         }

1 个答案:

答案 0 :(得分:-1)

您可以使用计时器来更新数据。

component.ts

import { timer } from 'rxjs';

ngOnInit() {
    timer(0, 5000).subscribe( t => {
        this.data.showMenus().subscribe(data => { this.resultMenus = data.data; });
    });
}

这将导致您的选项列表每5秒更新一次。