如何等待路由来完成?

问题描述 投票:0回答:1

当用户点击一个链接,它使用路由到用户发送到另一个组件,你开始在家里,可以点击图表。我的问题是我需要得到的图表元素queryselector,但是当代码是从组件加载,它并不存在。我怎么能等待要创建执行代码的元素?

dart angular-dart
1个回答
0
投票

我通过添加构造内MutationObserver解决了这个。

Element chartsElement;

ChartsComponent() {
  MutationObserver observer = MutationObserver(_onMutation);
  Element my_app = querySelector('my-app');
  observer.observe(my_app, childList: true);
}

_onMutation(List<dynamic> mutations, MutationObserver observer) {
  mutations.forEach((value) {
    MutationRecord record = value as MutationRecord;
    if (record.addedNodes.contains('charts')) {
      chartsElement = record.addedNodes[0];
    }
  });
  observer.disconnect();
  //Do stuff
}
© www.soinside.com 2019 - 2024. All rights reserved.