Диаграмма не обновляется при изменении свойства zoom: min - PullRequest
1 голос
/ 27 марта 2019

Перво-наперво, я работаю в Angular 7, и я получил следующее «приложение»: enter image description here

Верхняя строка - это фильтр даты, который дает возможность выбрать день «От» (De на португальском языке) и день «До» (Até на португальском языке). Предполагается, что при выборе этих дней на графике будет отображаться только соответствующий интервал, например: дни с 2019/01/01 по 2019/02/02. Просто как тот. Итак, теперь я покажу логику, которую я использую для передачи данных из компонента bar (filtro-data.component) родителю (charts-report.component), а затем от родителя ко многим графикам, но пока мы будем использовать только ( dimensao-component). Я работаю только со входом de From, чтобы увеличить его: min.

filtro-data. component.ts

export class FiltroDataComponent implements OnInit {

  dateDe : any;
  dateAte : any;

  @Output() dateDeEvent = new EventEmitter<string>()

  constructor() { }

  ngOnInit() { }

  sendMessage() {
    this.dateDeEvent.emit(this.dateDe);
  }
}

filtro-data.component.html

<input id="dateDe" name="dateDe" [(ngModel)]="dateDe" type="date" required>
<input type="date" id="dateAte" name="dateAte" [(ngModel)]="dateAte" required>
<button (click) = "sendMessage()">Aplicar</button>~

Итак, здесь я подготовил данные из входных данных, чтобы отправить их родителю. Вот родитель:

charts-report.component.ts

export class ChartsReportComponent implements OnInit {
  @ViewChild(DimensaoComponent) dimensaoC: DimensaoComponent; //to import the component dimensao

  constructor(private formbulider: FormBuilder, private route: ActivatedRoute) {  }

  dateDe: any;

  receiveMessage($event) {
    this.dateDe = $event;
    this.dimensaoC.updateChart() //this will make sense
  }

  ngOnInit() {}
}

charts-report.component.html

<app-filtro-data (dateDeEvent)="receiveMessage($event)"></app-filtro-data>
 <app-dimensao [dateDe]="dateDe"></app-dimensao>

Со всем этим я отправлю информацию в мой компонент измерения ...

dimensao.component.ts

@Input() dateDe : any;

(...)
        time: {
            unit: 'day',
            min: this.dateDe
        }
(...)
   updateChart(){
    this.LineChart.update();
  }   

Я провел несколько «тестов», и компонент Dimensao получил дату, которую я выбрал в filter-date.component, так что все хорошо ... но тогда изображение не обновляется, когда я нажимаю кнопку «Aplicar» , даже с функцией, чтобы сделать это (см. receiveMessage в charts-report.component) ... Я пробовал много вещей, но ничего не получается. Ты знаешь, что я мог сделать? Я просто хочу, чтобы графика обновлялась с новыми данными в "мин". Спасибо.

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