SolidJS:打字稿错误表示值的类型为“未定义”,尽管检查它不是

2024-03-05

我有一些 SolidJS 代码,例如:

{value() !== undefined && <img src={srcs[value()]} />}

where value是一个信号。我在下面收到 TypeScript 错误value() saying Type 'undefined' cannot be used as an index type.ts(2538)

这是什么意思以及如何解决这个问题而不// @ts-ignore?


Typescript 无法知道这一点value()每次调用都会返回相同的结果。您可以对第二个使用非空断言运算符value()

{value() !== undefined && <img src={srcs[value()!]} />}

或者你可以使用<Show> https://www.solidjs.com/docs/latest/api#%3Cshow%3E带回调。Show将传递的值when,如果它显示,则传递给回调,并且其类型将不可为空:

<Show when={value()}>{value => <img src={srcs[value]} />}</Show>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SolidJS:打字稿错误表示值的类型为“未定义”,尽管检查它不是 的相关文章

  • 使用服务的 DDD 实体

    我有一个应用程序 我试图使用至少一个名义上的 DDD 类型的域模型来构建 并且正在努力解决某个部分 我的实体有一些业务逻辑 这些逻辑使用我当前在某些域服务中拥有的一些财务计算和费率计算 以及我放入值对象中的一些常量值 我正在努力解决如何让实
  • 如何在不使用任何框架或库的情况下在屏幕上绘制图形?

    我想手动绘制图形 这意味着不使用任何库或框架 如 QT directX whindow h 就像向屏幕上的每个像素发出命令以在不同时间显示某种特定颜色 每个机构都会根据这些库或它们的名称提供教程 我想要的是制作我自己的 GUI 据我所知 这
  • 强制从外部页面刷新网页

    我有这样的情况 100 台计算机正在显示一个网页 我可以从后端更新此网页 我希望我的 100 台计算机上显示的网页能够自动更新 有没有办法在不轮询的情况下刷新 更新页面 最好的方法是外部页面可以强制页面重新加载 但我认为这是不可能的 Tha
  • 如何在 mariadb 中使用 -> 运算符查询 JSON 列

    我正在尝试获取时间表 将 json 列数据与 Laravel 项目中的以下代码进行比较 schedules Schedule where schedule with gt company person contact company per
  • Cassandra 3.10 debug.log 频繁包含“FailureDetector.java:457 - 忽略间隔时间...”

    我们的 Cassandra 3 10 集群之一的 debug log 文件经常出现类似于 FailureDetector java 457 忽略 的间隔时间 的消息 即使集群处于空闲状态 也会显示这些消息 我在这个 6 节点集群 两个数据中
  • 使用 Ruby 读取文件的上一行

    如何读取文件的前一行 与 IO gets 相反 我最初想将 IO lineno 设置为我想要读取的行号 但这并没有按预期工作 您实际上如何阅读前一行 一个简单的方法是记住您读过的上一行 prev nil File foreach vimrc
  • 如何获取未知 JSON 层次结构的总深度?

    我一直在努力寻找 构建一个递归函数来解析这个 JSON 文件并获取其子文件的总深度 该文件看起来像这样 var input name positive children name product service children name
  • 从点云到 Mat 的转换

    假设我初始化了一个点云 我想将其 RGB 通道存储在 opencv 的 Mat 数据类型中 我怎样才能做到这一点 pcl PointCloud
  • Chartjs 示例无法重现

    我希望从 Chartjs 文档中重现此示例的结果 https www chartjs org docs latest samples scales time line html https www chartjs org docs late
  • R 3.0.x 中的 RExcel

    兰德之友 http rcom univie ac at download html RAndFriends 其中包括运行所需的所有项目RExcel 仅包括R 2 15 2 我目前使用的是最新版本R but rcom 2 3 1 and rs
  • Android StaggeredGridLayoutManager 偏移错误

    当你清除你的adapter并打电话notifyDataSetChanged 交错网格布局管理器经理还有mCachedStart End in Span 实例 因此 当您向适配器添加新项目时 布局管理器会使用以下命令绘制项目offset 这是
  • 修改可变对象的方法?

    鉴于函数式编程在尽可能坚持不可变变量时是最好的 并且 Ramda 总是进行浅拷贝 那么对象如何must在大多数纯功能框架中处理可变的问题 例如 考虑 PIXI Sprite 在 pixi js 中 显示系统具有链接在一起的固有层次结构 并且
  • 在堆积条形图中添加组之间的间距

    假设我有一个带有分组条形的条形图 酒吧有一个大团体和多个非常小的团体 组标签位于组上 为了增加可读性 我想在组之间引入一定的间距 我使用以下代码和图像编辑器创建了一个示例图像 library ggplot2 g lt ggplot mpg
  • 指示函数使用“参数”对象的最清晰方法是什么?

    指示函数使用 参数 对象的最佳方式是什么 这显然是基于意见的 但是有任何约定吗 什么时候使用参数数组更好 一些例子 Function takes n arguments and makes them pretty function many

随机推荐