Dart “省道编辑器”;“死代码”;陈述
我试图在下面的代码中单击menuicon(定义为#行)时切换菜单 在执行过程中,一切都很好,我的意思是,一旦我在DARTIUM中运行了代码,它就可以按照我想要的方式工作,单击菜单就会切换 但在Dart编辑器中,我在附加的图片中得到了错误消息,我的代码中是否有错误Dart “省道编辑器”;“死代码”;陈述,dart,Dart,我试图在下面的代码中单击menuicon(定义为#行)时切换菜单 在执行过程中,一切都很好,我的意思是,一旦我在DARTIUM中运行了代码,它就可以按照我想要的方式工作,单击菜单就会切换 但在Dart编辑器中,我在附加的图片中得到了错误消息,我的代码中是否有错误 void main() { .... var menuToggle =querySelector('#lines') ..onClick.listen((e)=>fonixMenu.hidden=true
void main() {
....
var menuToggle =querySelector('#lines')
..onClick.listen((e)=>fonixMenu.hidden=true ? !fonixMenu.hidden : false);
....
}
我认为它告诉您,您的代码中的
false
永远无法到达,因为true
导致表达式的第一部分返回
您可以将其简化为:
onClick.listen((e)=>fonixMenu.hidden=!fonixMenu.hidden);
我想你真正想做的是
void main(){
....
var menuToggle=querySelector(“#行”)
…onClick.listen((e)=>fonixMenu.hidden=fonixMenu.hidden==true?=false:fonixMenu.hidden=true);
//^2=
....
}
但是,当您确保fonixMenu.hidden
永远不为null
时,Danny的解决方案更加优雅,因为
var x=null;
变量Y=!x
导致异常:
类型“Null”不是“boolean expression”的类型“bool”的子类型。
一个简单的空安全变量
var menuToggle=querySelector(“#行”)
…onClick.listen((e)=>fonixMenu.hidden=fonixMenu.hidden==true?false:true);
我想你也错过了一个作业(e) =>fonixMenu.hidden=fonixMenu.hidden==true!fonixMenu.hidden:false)`