Dart 自定义元素-构造函数中查询()的空引用
我正在开发我的第一款飞镖应用程序,完成了飞镖游戏教程。我正在尝试创建一个语义命名为top-menu元素,它最终将在页面顶部显示一个导航菜单选项卡列表。我的Dart应用程序能够识别我的自定义元素并调用关联的构造函数 但是,当试图在自定义元素中查询UL元素时,我得到了一个空引用。我需要UL参考,以便将我的LI元素动态加载到菜单中 问题1: 该元素是否应该在构造函数运行时在DOM中可见 问题2: 如果它还不可见,那么在自定义元素完全加载到DOM中之后,是否有Dart事件可以用来触发LI元素的加载 提前谢谢!以下是我的自定义元素的来源,以供参考: topmenu-element.htmlDart 自定义元素-构造函数中查询()的空引用,dart,dart-webui,Dart,Dart Webui,我正在开发我的第一款飞镖应用程序,完成了飞镖游戏教程。我正在尝试创建一个语义命名为top-menu元素,它最终将在页面顶部显示一个导航菜单选项卡列表。我的Dart应用程序能够识别我的自定义元素并调用关联的构造函数 但是,当试图在自定义元素中查询UL元素时,我得到了一个空引用。我需要UL参考,以便将我的LI元素动态加载到菜单中 问题1: 该元素是否应该在构造函数运行时在DOM中可见 问题2: 如果它还不可见,那么在自定义元素完全加载到DOM中之后,是否有Dart事件可以用来触发LI元素的加载 提前
顶部菜单
topmenu-element.dart
import'package:web_ui/web_ui.dart';
导入“dart:html”;
类TopMenu扩展了WebComponent{
列表菜单项=[“会话”、“身份验证服务”、“车辆服务”、“订户服务”、“数据服务”];
void populateMenu(){
UListElement menuList=query(“#顶部菜单列表”);
LIElement newMenuItem=新的LIElement();
newMenuItem.text=menuItems[0];
menuList.children.add(newMenuItem);
}
TopMenu(){
//populateMenu();
}
}
我不能具体谈论使用查询方法的构造函数中的DOM可见性,因为我确实不确定。但是,您可能可以使用更好的方法,这些方法在项目的不同阶段调用
也就是说,我可以问一下为什么需要使用这个特殊的方法来添加子对象。这样做可能更容易:
顶部菜单
- {{item}
这样就不需要在构造函数中添加任何菜单显示代码。谢谢,马特。我选择我的方法只是因为这是这个达特·努布能想到的第一件事。我想你的解决方案正是我想要的。从这里开始,我将致力于动态填充菜单项。