Typescript:如何从react-bootstrap导入特定组件

2024-05-14

早些时候我的应用程序位于ReactJs + React-bootstrap。现在我正在使用Typescript + ReactJs + React-bootstrap

为了减少生产应用程序的大小,之前我曾经使用 - 导入react-bootstrap组件import Button from 'react-bootstrap/lib/Button'

添加 Typescript 后显示以下错误

[at-loader] ./components/Hello.tsx:6:8 中出现错误 TS1192:模块“react-bootstrap/lib/Button”没有默认导出。

Trial 1

import {Button} from 'react-bootstrap/lib/Button'但在这种情况下 Button 是未定义的。

Trial 2

import * as Button from 'react-bootstrap/lib/Button'但在这种情况下会弹出另一个错误

[at-loader] ./components/Hello.tsx:54:12 中出现错误 TS2604:JSX 元素类型“Button”没有任何构造或调用签名。

此错误显示行中的错误<Button onClick={handleClick} bsStyle="danger" bsClass="glyphicon glyphicon-new-window"></Button>

Though import {Button} from 'react-bootstrap'工作正常,但这不是我想要的,因为它会导致应用程序的大小增加 200kbs。

我们如何使用 Typescript 从 React-Bootstrap 导入特定组件?


由于 TypeScript 遵循 ESModule 规范,但lib使用 CommonJS,你必须这样做,当你切换到 TypeScript 时,你需要使用 React 导入。

JS

import React from 'react'
import Button from 'react-bootstrap/lib/Button'

打字稿

import * as React from 'react'
import * as Button from 'react-bootstrap/lib/Button'

无耻自插:我写过原因here https://medium.com/@sebastiansebald/typescript-the-nitty-gritty-parts-85313547a182。我想你以后还会遇到这个问题:)

这是我使用的版本:

{
  "@types/react-bootstrap": "^0.0.47",
  "react-bootstrap": "^0.30.8"
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Typescript:如何从react-bootstrap导入特定组件 的相关文章

随机推荐

  • 通过 Apps 脚本强制刷新公式

    有时 更改单元格的值时 电子表格中的公式不会自动刷新 并且单元格上会出现注释以选择该单元格 然后按 CTRL SHIFT E 强制重新加载公式 我想从 Apps 脚本调用此重新加载函数 有没有办法用 Apps 脚本来做到这一点 我尝试了 S
  • 如何删除 WSO2 Identity Server 中的租户?

    在 v 4 6 0 中 我们无法通过 UI 删除 tenat 只能禁用 但是 我看到 TenantMgtAdminService 肥皂服务上有一个 deleteTenant 方法 我尝试调用此服务 但收到错误消息 从日志来看 它有 org
  • Android中将JSON数据存储到本地数据库

    好的 我创建了一个应用程序 它使用 JSON 从我的服务器检索数据 现在我想将检索到的数据存储在手机的本地存储 数据库中 我该怎么做 我是android编程新手 这是我从服务器收到的 JSON messages id 44 issender
  • 使用 javascript 获取焦点元素的 id

    我有一个包含许多锚元素的 Html 页面 这个单个 Html 页面包含许多 div 部分 一次仅显示一个部分 并且特定于该部分的锚点将聚焦 该 html 还包含一个用于打开弹出窗口的 div 当此弹出窗口打开特定于此的锚点时 将聚焦 现在我
  • WPF TextBox:如何将默认绑定模式更改为 OneWay?

    最初 我有以下代码
  • SQL/C# - UPSERT 上的主键错误

    UPDATE 简化的问题 从问题中删除了 C 在以下情况下 如何编写一个可以识别两行相同的 UPSERT 看看怎么有一个 b 退格键 在那里编码 奇怪的小字符 SQL 将它们视为相同 虽然我的 UPSERT 将此视为new data并在应该
  • xcode“将源编译为”覆盖特定文件

    我有一个项目 必须将 编译源为 值设置为 Objective C 不 根据文件类型 在我的主项目中不起作用 我从框架 特别是 OpenFeint 获得的文件有问题 该文件在编译为 Objective C 时出现编译错误 error poin
  • 转发按键事件

    我有一个文本框 想从另一个表单转发按键事件 到目前为止我已经有了我的表格 private readonly Action
  • 如何增加vm.max_map_count?

    我正在尝试在 Ubuntu EC2 计算机 t2 medium 中运行弹性搜索 但我收到消息 最大虚拟内存区域 vm max map count 65530 太低 至少增加到 262144 我怎样才能增加vm max map count v
  • 如何从Python列表中的字符串中删除双引号?

    我正在尝试在字典列表中获取一些数据 数据来自 csv 文件 因此都是字符串 文件中的键都有双引号 但由于这些都是字符串 我想删除它们 这样它们在字典中看起来像这样 key value 而不是这个 key value 我尝试简单地使用 str
  • 是否可以使用外部指示器来激活显示文件中的显示属性?

    我目前正在修改现有的 RPG 程序 目的是设置一个指示器 使该指示器激活显示文件中的显示属性ND来隐藏字段 问题是所有通用指标 IN01 IN99 都已用完 我无法在不干扰现有程序流程的情况下重用其中任何一个 可以用外部指示灯U1 U8代替
  • Scala:什么是 CompactBuffer?

    我试图弄清楚 CompactBuffer 的含义 和迭代器一样吗 请解释其中的差异 根据 Spark 的文档 它是 ArrayBuffer 的替代方案 可以提供更好的性能 因为它分配的内存更少 以下是 CompactBuffer 类文档的摘
  • 使 css nth-child() 只影响可见

    有没有办法用这个CSS只影响可见元素 table grid tr alt nth child odd background ebeff4 table grid tr alt nth child even background ffffff
  • Azure COSMOS DB 如何查询数组中的内容

    如何进行查询以获取文档数组 roles 中包含某些内容的文档 我想获取以下文档 其中 Trainer 是数组中的元素 enabled true profilePicture null roles Trainer Client SELECT
  • 如何在 django 中验证给定的 URL 是否来自特定域

    我有一个模型 class Profile models Model social github models URLField blank True null True social twitter models URLField blan
  • “清空缓存并硬重新加载”是否会清空整个缓存或仅清空与当前站点相关的部分?

    Chromium Chrome 中的 清空缓存并硬重新加载 是否会清空整个缓存或仅清空与当前站点相关的部分 我的暗示是 它绝对清空了所有缓存的资源 正如评论中所建议的那样 这个答案 https stackoverflow com a 149
  • 尝试用 Javascript 创建简单的幻灯片放映方法

    我一直在尝试创建一个基本的 JavaScript 片段 以便在单击链接时在网页上前后滑动图像 这是我的js代码网页部分
  • C# byte[] 的问题

    我正在将文件加载到字节 中 根据我的理解 byte 应该包含特定的字节元素 8 位 当我打印每个字节时 它们都不是 8 位 即它们的长度不是 8 我的代码 FileStream stream File OpenRead C Image Im
  • 使用同一个侦听器的多个活动

    我有 4 个活动 它们都包含一个 xml 页脚 其中包含 4 个按钮 每个活动一个 我现在想为这些按钮设置 onclicklistener 它是页脚中的自制菜单 问题是 如何使用侦听器以便重用代码 我有两个想法 创建一个实现 onclick
  • Typescript:如何从react-bootstrap导入特定组件

    早些时候我的应用程序位于ReactJs React bootstrap 现在我正在使用Typescript ReactJs React bootstrap 为了减少生产应用程序的大小 之前我曾经使用 导入react bootstrap组件i