当前位置: 首页 > news >正文

做网站的宽度为多少钱有趣的网络营销案例

做网站的宽度为多少钱,有趣的网络营销案例,网页简单模板下载,线上培训我的 App 里&#xff0c;一个消息气泡变成空白了&#xff0c;非常奇怪&#xff0c;此前一直是没问题的&#xff0c;经过调试定位我发现&#xff1a; static TextSpan _buildRootSpan(BuildContext ctx, List<LinkifyElement> parts, TextStyle? style) {List<InlineS…

我的 App 里,一个消息气泡变成空白了,非常奇怪,此前一直是没问题的,经过调试定位我发现:

  static TextSpan _buildRootSpan(BuildContext ctx, List<LinkifyElement> parts, TextStyle? style) {List<InlineSpan> children = [];for (var p in parts) {switch (p.runtimeType) {case TextElement _:children.add(TextSpan(text: p.text));break;case UrlElement _:var url = p as UrlElement;var recognizer = TapGestureRecognizer();recognizer.onTap = () {AutoRouter.of(ctx).push(WebRoute(targetUrl: url.url));};children.add(TextSpan(text: url.text,style: TextStyle(color: Theme.of(ctx).colorScheme.secondary,decoration: TextDecoration.underline,decorationColor: Theme.of(ctx).colorScheme.secondary,),recognizer: recognizer,));break;}}return TextSpan(style: style,children: children,);}

问题出在这段代码里,最后的 TextSpan 返回的内容是空的。怎么会如此呢?从没改过这段代码。加了很多 Log 后,我发现,Switch 语句的所有 case 都没命中!我对 p.runtimeType 进行 switch 判断,但是明明类型没错,但是就是不命中。

问了一下 ChatGPT,给出了明确答案:

在 Dart 中,你不能直接在 switch 语句中对类型进行判断,因为 switch 语句要求其表达式的结果必须是编译时常量,而类型检查(使用 is 关键字)不满足这个条件。但是,你可以使用一些替代方案来根据对象的类型执行不同的逻辑。

一种常见的做法是使用 if 语句和 is 类型检查操作符,像这样:

void performAction(Object obj) {if (obj is TypeA) {// 处理 TypeA} else if (obj is TypeB) {// 处理 TypeB} else {// 处理其他类型}
}

另一种方法是使用 Dart 2.15 引入的 switchcase 语法的增强特性,结合枚举和 when 函数(如果你定义了一个这样的函数),你可以模仿类型判断的行为。虽然这不是直接的类型判断,但它允许你在相似的上下文中根据不同的条件执行不同的代码块,特别是当你处理的是固定集合中的值时。

如果你真的需要根据类型来分支逻辑,使用 if-is 检查可能是最直接和最清晰的方式。 Dart 的类型系统和 is 操作符非常强大,可以满足大多数需要类型判断的场景。

说实在的,我觉得我穿越了,代码一直是这样的,也没改过,功能正常也好多个版本了,怎么突然就跟我说,dart 压根不支持对类型进行 switch 这不是搞笑么???

改成 ifis 后,立刻全部正常了,我服了。引以为戒吧。

又查了点资料,感觉跟 3.0 新语法有关: Dart 3.0 语法新特性 | switch 匹配加强

http://www.tj-hxxt.cn/news/27340.html

相关文章:

  • 网站建设项目验收报告松原头条新闻今日新闻最新
  • 公司起名字大全免费四字seo入门黑帽培训教程
  • 免费做网站模板在哪里做企业员工培训课程内容
  • 做python项目的网站搜索引擎优化的根本目的
  • 小说网站的会员充值是怎么做的搜外seo
  • 房产网手机版网站建设目标百度手机应用市场
  • 营销网站设计电商项目策划书
  • 朝阳区住房城乡建设委 房管局 官方网站北京seo全网营销
  • 域名网站注册最划算免费信息推广网站
  • 怎样做营销型网站推广ppt湖南企业seo优化首选
  • 网站建设转正申请报告广州搜索seo网站优化
  • 商城网站建设公司上海百度推广客服电话多少
  • 保定 网站制作 招聘全网营销平台有哪些
  • 怎么制作网站获取他人ip电脑培训机构哪个好
  • 北京新机场建设指挥部网站熊猫seo实战培训
  • 潍坊 网站企划互动营销
  • 环境文化建设方案网站硬件优化大师
  • 网站平台建设实训日志宁波网站关键词排名推广
  • 创世做的网站源码推广互联网营销
  • 邮箱域名可以做网站吗网络营销seo优化
  • 如何做网站外链网络软文推广案例
  • 企业建设网站目的郴州网络推广公司排名
  • saas 平台架构做网站网络营销策划书模板
  • 搭建本地环境做网站怎么免费做网站
  • 网站名词赣州seo培训
  • 网站设计电商首页足球直播在线直播观看免费cctv5
  • 山东政府网站建设特色百度网页推广怎么做
  • 做外汇网站搜索广告优化
  • wordpress文章版权投诉搜易网优化的效果如何
  • 大连市营商环境建设监督局网站互联网营销师报名官网