首页 > 其他分享 >Could not find a generator for route RouteSettings("search", null) in the _WidgetsAppState

Could not find a generator for route RouteSettings("search", null) in the _WidgetsAppState

时间:2023-08-17 22:00:44浏览次数:38  
标签:search 定义 generator route 生成器 onGenerateRoute 路由 函数

遇到这个错误消息意味着在您的Flutter应用程序中没有为名为"search"的路由定义路由生成器。要解决此问题,您需要定义一个路由生成器来处理名为"search"的路由。

以下是如何在Flutter应用程序中定义路由生成器的示例:

  1. 首先,定义一个路由生成器函数,该函数接受 RouteSettings 对象并返回一个 Route
Route<dynamic> routeGenerator(RouteSettings settings) {
  // 从 settings 中提取路由名称
  final String routeName = settings.name;

  // 根据路由名称定义不同的路由
  switch (routeName) {
    case 'search':
      // 返回适用于'search'路由的相应路由小部件
      return MaterialPageRoute(builder: (_) => SearchScreen());
    // 如果需要,可以添加更多其他路由的情况
    default:
      // 通过返回错误消息或默认屏幕来处理未知的路由
      return MaterialPageRoute(builder: (_) => NotFoundScreen());
  }
}
  1. 在您的 MaterialApp 小部件中指定 onGenerateRoute 属性,并将其赋值为路由生成器函数:
MaterialApp(
  // 其他应用程序配置
  onGenerateRoute: routeGenerator,
)

通过提供自定义的路由生成器函数给 onGenerateRoute 回调,Flutter 将使用此函数来生成在直接定义的路由之外导航到的路由。在 routeGenerator() 函数中,您可以为每个路由名称定义适当的路由小部件。

确保将 SearchScreen() 替换为您想要在访问"search"路由时导航到的实际小部件。类似地,调整处理未知路由的逻辑,在 default 案例中。

通过设置路由生成器,您应该能够在不遇到错误消息的情况下导航到"search"路由。

标签:search,定义,generator,route,生成器,onGenerateRoute,路由,函数
From: https://blog.51cto.com/u_15997490/7127888

相关文章

  • spring boot 集成 Elasticsearch
    一、背景最近在做录制回放平台,因为需要把部分数据存储到ES,因此特地实践和调研了一把,把相关材料记录一下;elastcishearch版本:7.14.2   springboot版本:2.6.13   spring-boot-starter-data-elasticsearch:2.6.13  版本参考文档 https://docs.spring.......
  • 搜文本搜位置搜图片,1小时玩转Elasticsearch
    加入Elasticsearch训练营,从全文检索到向量检索,搭建高频业务场景,构建进阶向量检索应用。带你拓展技术视野,晋升Elasticsearch搜索实战派。以下为训练营的参营指南,请您仔细阅读便于更顺利地进行训练营打卡。活动地址活动地址:<https://developer.aliyun.com/trainingcamp/53a2ca29e......
  • 一文了解 history 和 react-router 的实现原理
    我们是袋鼠云数栈UED团队,致力于打造优秀的一站式数据中台产品。我们始终保持工匠精神,探索前端道路,为社区积累并传播经验价值。本文作者:霜序前言在前一篇文章中,我们详细的说了[email protected]升级到@6.x需要注意的问题以及变更的使用方式。react-router版本更新非......
  • elasticsearch中的数据类型search_as_you_type及查看底层Lucene索引
    search_as_you_type字段类型用于自动补全,当用户输入搜索关键词的时候,还没输完就可以提示用户相关内容。as_you_type应该是说当你打字的时候。它会给索引里的这个类型的字段添加一些子字段_2gram_3gram和_index_prefix。_2gram的意思是,如果一个值是abcd,2gram就是abbccd,3gr......
  • 二叉搜索树(BST,binary search tree)
    对于静态查找可以用二分查找,将查找时间复杂度降到log2n。其中,虽然数据存储在线性的结构里,但我们事先对数据进行了处理,在查找的顺序过程中运用到判定树这样的结构,将线性上的查找过程转变为了在类似树上面的查找过程,其查找的效率就是树的高度。但如果查找的集合不仅有查找还......
  • vue-router 配置
    1.安装   npminstallvue-router--save  vue2会有版本兼容问题:[email protected].配置  在src文件夹下新建router文件夹,在router文件夹中新建index.js//导入路由对象importRouterfrom'vue-router'//vue-router是插件所以我们用Vue.use......
  • elasticsearch中的数据类型:flattened和join
    flattened:比如你有一个字段的值是一个json,这个json里面又有很多字段,你又不想一个一个的定义这些字段到mapping,就可以用flattened直接动手:创建索引:PUTperson{"mappings":{"properties":{"patient_name":{"type":"text"},&......
  • Elasticsearch 保姆级入门篇
    Elasticsearch是一个分布式的、面向生产规模工作负载优化的搜索引擎。Kibana可以将Elasticsearch中的数据转化为直观的图表、图形和仪表盘。这篇文章,您将学习本地安装Elasticsearch和Kibana,以及使用开发工具/JavaSDK创建索引和搜索数据。1本地安装1.1创建网络我......
  • Linux的ElasticSearch安装部署
    简介全文搜索属于最常见的需求,开源的Elasticsearch(以下简称es)是目前全文搜索引擎的首选。它可以快速地储存、搜索和分析海量数据。维基百科、StackOverflow、Github都采用它。Elasticsearch简称es,在企业内同样是一款应用非常广泛的搜索引擎服务。很多服务中的搜索功能,都......
  • ElasticSearch置顶方案
    最近系统有个需求,希望工作流的审批人被催办后就要置顶在最前面,工作流列表我是用es的,一开始想用pinned实现,但用pinned的话,每页都会置顶在前面,我的需求只是想让他优先排在前面,翻页后正常显示后面找到这个,通过把匹配到数据的分数提高,然后用sort进行排序,就能实现我的需求了GETwf......