Flutter 这个颤振构造函数调用是如何工作的?
我对颤振还不熟悉,在阅读教程时,我看到了以下代码片段:Flutter 这个颤振构造函数调用是如何工作的?,flutter,syntax,Flutter,Syntax,我对颤振还不熟悉,在阅读教程时,我看到了以下代码片段: // Within the `FirstRoute` widget onPressed: () { Navigator.push( context, MaterialPageRoute(builder: (context) => SecondRoute()), ); } 为什么电话在工作?我看到它请求一个类型为的对象,但我们传递的是一个。context周围的括号是否表示调用了WidgetBuilder的构造函
// Within the `FirstRoute` widget
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => SecondRoute()),
);
}
为什么电话在工作?我看到它请求一个类型为的对象,但我们传递的是一个。
context
周围的括号是否表示调用了WidgetBuilder
的构造函数?正如您所说,builder参数接受WidgetBuilder类型的对象。“隐藏”是指它是typedef:
typedef WidgetBuilder = Widget Function(BuildContext context);
因此,您传递的实际上是一个与之匹配的匿名函数。builder参数接受您所说的WidgetBuilder类型的对象。“隐藏”是指它是typedef:
typedef WidgetBuilder = Widget Function(BuildContext context);
因此,您传递的实际上是一个与之匹配的匿名函数。它被称为箭头函数。实际上这段代码
(context) => SecondRoute()
可以重写如下:
MaterialPageRoute(builder: (context) {
return SecondRoute();
})
而widget builder是一个函数,MaterialPageRoute需要它作为参数。它被称为箭头函数。实际上这段代码
(context) => SecondRoute()
可以重写如下:
MaterialPageRoute(builder: (context) {
return SecondRoute();
})
widget builder是一个函数,MaterialPageRoute需要它作为参数。您想在创建对象时立即调用参数吗?
WidgetBuilder
是一个函数,它接受一个BuildContext
类型的参数并返回一个widget
。builder是一个返回widget的回调函数,当您传递SecondRoute时,它是一个包含构建函数的类,该函数以上下文为参数,顺便说一句,它将返回widget,因此它将返回带有widget的新页面创建对象时是否要立即调用参数?WidgetBuilder
是一个采用一个类型参数的函数BuildContext
并返回一个Widget
。builder是一个返回Widget的回调函数,当您传递SecondRoute时,它是一个包含构建函数的类,该函数以上下文为参数,顺便说一句,返回Widget,因此它将返回带有Widget的新页面