扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
未初始化的变量值都是null
目前成都创新互联已为近千家的企业提供了网站建设、域名、虚拟空间、网站托管、服务器托管、企业网站设计、鹤山网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
var可以接受任意类型的变量,但一旦被赋值,类型就会被确定。
dynamic可以接受任意类型的变量,被赋值后,类型还可以再被赋值再改变。
final与const都可以修饰一个不可变的变量,但final变量是一个运行时常量,在第一次使用的时候被初始化。
const变量是一个编译时常量,在编译的时候就被初始化了。所以,const的性能比final高。
a?.cancel():a不为空才会执行a的cancel()方法
var i = a??"a是空":a是空时,将a赋值为字符串"a是空"
k??="1":如果k之前没有赋值,则会被赋值为“1”,如果之前有值,这句话就无效。
例如有一个函数:String say(String from, String msg, [String device])
那么device可以传也可以不传值,下面两种调用方式都是对的。
例如有一个函数:void fun1({int i,int j}),
使用时:fun1(i = 1)、fun1(j = 10)、fun1(i = 10,j = 20)都可以。
可选位置参数和可选命名参数都可以设置默认参数值
例如:
void fun1({int i = 1,int j = 2})
String say(String from = "a", String msg = "b", [String device = "c"])
配置routes参数
main函数:
使用
单参数
多参数
参考了: Flutter命名路由及传参的深度实践与解读 ;
背景:flutter组件嵌套都很深,依次传递数据很麻烦,所以最好是能够跨组件传递。有三张跨组件的方式:InheritedWidget、Notification、Eventbus.
是一种自上而下的传递数据的方式。
使用步骤:
它的数据流动方式和InheritedWidget刚好相反,从子控件向上面传递。
具体使用
跟android 原生的eventbus原理和使用一样。
在网上找了很多没有关于这方面的例子,组件之间传值,可以通过构建函数,如果我要回调这个组件的值呢,给大家介绍一下这两个值 ValueChanged VoidCallback 自己也加深记忆一下
一ValueChanged
官方解释
这个值可以回调值,例如
二 VoidCallback
这个值也可以回调但不能回调值,只能触发方法
hao((){
print("");
});
hao(VoidCallback voidCallback){
voidCallback();
}
错误方法下面会报错的
传值有很多方法。 如: 文件传值、QueryString 、session、Cookie、等吧。
你可以用querystring 的方法传值。WebForm2.aspx?a=a[0]
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流