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