&& 逻辑运算符 jsx 和 typescript 错误

2024-03-16

我对打字稿还很陌生,我想知道为什么会失败

import {CircularProgress} from 'components/shared/material'

import React from 'react'

import loadingStyles from './styles'

const Loading = ({active}: {active: boolean}) => {
 const classes = loadingStyles({active, fadeSpeed: 1})
 return (
  active && (
   <div className={classes.overlay}>
    <CircularProgress />
   </div>
  )
 )
}

export default Loading

当我尝试在另一个组件中使用它时,我收到以下消息:

Loading' 不能用作 JSX 组件。 它的返回类型'false | Element' 不是有效的 JSX 元素。 类型“false”不可分配给类型“Element |”无效的'。

这很奇怪,因为这适用于常规 js,而在打字稿中,只有当我使用像这样的三元语句时才有效:

  return active ? (
   <div className={classes.overlay}>
    <CircularProgress />
   </div>
  ) : null

如果你真的想使用速记 - 你可以这样做。使用 > 允许多行(在本例中是可选的)并确保函数返回单个元素。将条件代码包裹在 {} 周围将确保您可以在其中添加任意数量的 && 检查来渲染组件。

  return (
    <>
      {active && (
        <div className={classes.overlay}>
          <CircularProgress />
        </div>
      )}
    </>
  );
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

&& 逻辑运算符 jsx 和 typescript 错误 的相关文章

随机推荐

  • 如何在不实际构建东西的情况下使 gradle 下载依赖项

    到了新的环境gradle build需要相当长的时间 因为必须下载所有依赖项 有没有办法只下载依赖项以加快后续构建的速度 这样我们就可以预先填充 CI 构建环境 编辑 针对 Gradle 6 进行了更新 一些注意事项 这种新方法将 jar
  • dplyr 用动态列进行总结

    我正在尝试对我的 postgres 数据库使用 dplyr 并执行一个简单的函数 如果我直接解析列名 一切都会正常 但是我想动态地执行此操作 即对另一个数据帧中的每个列名进行排序 我遇到的问题是对于前两个计算 我得到了正确的结果 假设第一个
  • 在 Eclipse 中找不到库“libmaliinstr.so”

    请帮我 我的Android应用程序是一个闹钟应用程序 可以在许多Android设备上按时播放 但是在华为荣耀C3等某些设备上播放时 我的代码出现错误 错误是 09 26 18 17 19 119 E linker 23841 load li
  • 导入 Python 模块时 __package__ 为 None

    我想通过以下方式动态导入模块 我创建一个名为 pkg 的文件夹 其结构如下 pkg init py foo py 在头 init py 添加此代码片段 pkgpath os path dirname pkg file for module
  • 移动字符串?

    我正在编写一个用 C 解决凯撒密码的程序 它采用字母表字符串 并在每次循环时将其向左移动 abc yz gt bcd yza 问题出在另一个循环之后 bcd yza gt cde yzaa char temp holds the first
  • 如何在 Gradle 中应用补丁文件?

    我有一个 Gradle 构建脚本 可以成功构建我的项目并编译我需要的所有工件 然而 在某些情况下 我想让其他开发人员可以选择修补某些文件 例如 在其中一个档案中有一个 xml 文件 其中包含有关数据库挂钩的信息 一些开发人员使用其他版本 甚
  • 如何增加 NetBeans IDE 中的字体大小?

    我刚刚买了一台相当大的新显示器 但在阅读编辑器上的文本时遇到了很多困难 我尝试以通常的方式增加字体大小 工具 gt gt 选项 gt gt 字体和颜色 gt gt 单击字体旁边的 按钮 gt gt 然后选择大字体大小 这是结果 点击查看大图
  • 如何将两个 Post/Category 表 MYSQL SELECT 查询合并为一个

    我有两个 MySQL 查询 1 SELECT ID post title post category post perma FROM TBL POSTS WHERE published 1 AND page 0 ORDER BY ID DE
  • jQuery ajax 删除 url 上的整数

    我正在使用这些数据 Pulled from the button that was hit var method document activeElement getAttribute method toUpperCase var url
  • 渐进式 Web 应用程序 - 不尊重屏幕方向

    我的网络应用程序不遵循我的设置中的方向manifest json manifest version 2 version 1 name My App short name My App icons src img myapp launcher
  • 61classes.jar 中存在重复的类,classes.jar 位于何处?

    所以 我的应用程序遇到了一个菜鸟问题 我已经开发了大约两周 突然间 它在启动时开始出现错误 该应用程序快完成了 现在它不再工作了 问题似乎出在classes jar文件夹中 我找不到这个文件夹 因为我是菜鸟 我已经尝试了在该线程上找到的几乎
  • nvarchar(max) 与 NText

    使用的优点和缺点是什么nvarchar max vs NTextSQL Server 中的数据类型 我不需要向后兼容 所以没关系nvarchar max 较旧的 SQL Server 版本不支持 Edit 显然这个问题也适用于TEXT an
  • 为什么在执行 record.inspect 时没有输出 attr_accessor 虚拟属性

    在我的 ListItem Rails 模型中 我有 attr accessor catalyst action actor user id actor full name 我可以在控制器中设置这些变量 并且我确认当记录到达观察者时它们仍然存
  • 在 javascript 中运行 fabcar 示例时出错 [重复]

    这个问题在这里已经有答案了 我正在尝试使用 javascript 链代码运行 fabcar 示例 在实例化链代码时失败并出现以下错误 error could not assemble transaction err proposal res
  • 具有改进的 CI/CD 的 Azure 数据工厂部署

    我正在关注此处发布的为 ADF 设置的新推荐 ci cd https learn microsoft com en us azure data factory continuous integration deployment improv
  • select2 下拉自动宽度无法正常工作

    我正在使用 select2 来设置dropdownautowidth在我的 SharePoint 搜索页面上设置为 true 并且第一次在页面加载时完美运行 在我搜索某个关键字后 页面会加载搜索结果 然后 dropdownautowidth
  • 使用 __dirname 时如何转到父目录? [复制]

    这个问题在这里已经有答案了 目录结构 WebApiRole GulpFile js test Karma conf js 咕噜代码来自GulpFile js gulp task test function done karma start
  • python @properties 如何以及何时进行评估

    这是一段代码 class TestClass def init self self a a print calling init property def b self b b print in property return b test
  • 容器形式的控件优于子形式?

    In a container form I have menu and buttons to open ther forms Here I am facing a problem when I open any form these but
  • && 逻辑运算符 jsx 和 typescript 错误

    我对打字稿还很陌生 我想知道为什么会失败 import CircularProgress from components shared material import React from react import loadingStyle