未定义命名参数onImageTaped

时间:2019-10-20 11:58:46

标签: flutter dart

我想实现一种功能,如果单击图像,则应导航到新页面。下面的代码一直运行良好,直到最近它在功能onImageTap下向我显示了一个弯曲的红色错误。

child: new Carousel(
                          boxFit: BoxFit.cover,
                          images: list,
                          onImageTap: (imageIndex) {
                            Navigator.of(context).push(
                              new MaterialPageRoute(
                                builder: (context) => new DishDetails(
                                    detail_name:
                                        snapshot.data[imageIndex].data["title"],
                                    detail_picture: snapshot
                                        .data[imageIndex].data["image"]),
                              ),
                            );
                          },
                          autoplay: false,
                          dotSize: 4.0,
                          indicatorBgPadding: 4.0,
                          animationCurve: Curves.fastOutSlowIn,
                          animationDuration: Duration(milliseconds: 1000),
                        )));

当我将鼠标悬停在函数上时,出现以下错误消息:

  

未定义onImageTap的命名参数。尝试更正名称   到现有的命名参数或使用此参数定义新参数   名称

有人可以告诉我如何解决此问题。

1 个答案:

答案 0 :(得分:0)

正如您之前提到的,它工作较早,所以我相信您正在使用一些带有Carousel小部件的第三方软件包,并且在其先前版本之一中它具有onImageTap,您在不知不觉中更新了插件并他们必须删除它或将其替换为其他东西。

解决方案:

因此,您可以使用具有onImageTap属性的先前版本,也可以使用其他版本。

您可能希望将Carousel包裹在GestureDetector中,并像这样处理onTap

GestureDetector(
  onTap: () {},
  child: Carousel(...)
)