以 react-router-dom 模块为例

1. npm加上 @types/

根据报错提示尝试安装该库的TypeScript版本 (该库的 ts 声明文件),也就是在该库的名称前加上 @types/

npm install @types/XXX
or
yarn add @types/XXX //本例中
npm install @types/react-router-dom

在方法一可行的情况下,推荐使用方法一但是,不是所有的第三方库都有 TypeScript 的版本,所以方法一不能保证百分百有效,如果方法一不奏效,那么我们来看一下方法二。

2. 添加配置文件

新建文件夹src/@types/,在 src 目录新建@types目录,在其中编写.d.ts声明文件,声明文件会自动被识别,可以在此为一些没有声明文件的模块编写自己的声明文件。

本例子为 react-router-dom.d.ts

声明模块类型

declare module 'XXX' {
const content: any
export = content
} //本例中
declare module 'react-router-dom' {
const content: any
export = content
}

实际上在 tsconfig include 字段包含的范围内编写 .d.ts,都将被自动识别。在x.js相同目录创建同名声明文件x.d.ts,这样也会被自动识别;typings 声明管理器,了解不多,已经不推荐使用。(楼主使用无效,想要尝试可看TypeScript 引入第三方包,报无法找到模块错误

--

引用:

TypeScript 中的声明文件

TypeScript 引入第三方包,报无法找到模块错误的更多相关文章

  1. [转]myeclipse 生成JAR包并引入第三方包

    myeclipse 生成JAR包并引入第三方包 我用的是myeclipse8.0 首先用myeclipse生成JAR 一.生成JAR包 1.点选项目右键—>Export 2.Java—>J ...

  2. Spark-shell引入第三方包

    Spark-shell引入第三方包 如何引入 spark-shell --jars path/nscala-time_2.10-2.12.0.jar 若有多个jar包需要导入,中间用逗号隔开即可. s ...

  3. 【Python】【亲测好用】安装第三方包报错:AttributeError:'module' object has no attribute 'main'

    安装/卸载第三包可能出现如下问题及相应解决办法: 在pycharm编辑中,使用anconda2更新.卸载第三方包时,出现如下错误: AttributeError:'module' object has ...

  4. window7下安装第三方包报错及解决

    window7 64位下安装第三方包,,比如安装yaml的exe执行文件,会 报错及解决:python version 2.7(3.4) required,which was not found in ...

  5. vue-cli创建的项目中引入第三方库报错 'caller', 'calle', and 'arguments' properties may not be...

    http://blog.csdn.net/sophie_u/article/details/76223978 以在vue中引入mui第三方库为例: 虽然针对vue,有单独的vue-mui库可以使用,但 ...

  6. 解决 mac 10.14.4 无法 sublime text 3207 安装 Package Control,以及安装第三方包报错 `Package Control There are no packages available for installation`

    下载最新的 sublime text 3207,无法安装 Package Control. 根据官方提示,手动安装 Package Control. 手动安装 Package Control 后,无法 ...

  7. vue-cli创建的项目中引入第三方库报错'caller', 'calle', and 'arguments' properties may not be...

    本文链接:https://blog.csdn.net/Sophie_U/article/details/76223978 问题: 在vue的main.js中引入mui.min.js时,报错. 如上,单 ...

  8. 安装第三方包web.py发生的错误

    今天新学到了python的模块方面的内容,我的版本是python2.7.13 想安装第三方包web.py的时候, 命令提示符 输入 pip install web.py 总是提示如下错误 You ar ...

  9. TypeScript引入moment.js报错“无法找到moment模块”及解决方法

    npm i moment下载moment完成后,在ts文件中引入 import * as moment from "moment"; 结果疯狂报错,未找到moment模块. 一开始 ...

随机推荐

  1. 第十一章 LNMP架构基础介绍

    一.LNMP架构 1.简介 oLNMP是一套技术的组合,L=Linux.N=Nginx.M~=MySQL.P~=PHP不仅仅包含这些,还有redis/ELK/zabbix/git/jenkins/ka ...

  2. GO用内置包写爬虫

    一.要点 爬虫被想太多,把他当做一个模拟别人的请求响应即可了,所有呢go写爬虫关键是写请求 二.get请求 package main import ( "bytes" " ...

  3. 010_Java基础语法

    目录 Java基础语法 注释 单行注释 // 多行注释 /* */ 文档注释 /** */ 标识符 关键字 标识符注意点 数据类型 强类型语言 弱类型语言 Java基础语法 注释 单行注释 // 多行 ...

  4. Java8新特性探索之Stream接口

    一.为什么引入Stream流 流是一系列与特定存储机制无关的元素--实际上,流并没有"存储"之说.使用流,无需迭代集合中的元素,就可以从管道提取和操作元素.这些管道通常被组合在一起 ...

  5. select单表查询和多表查询

    数据表 1).学生表: Student 字段: (SID,Sname,Sage,Ssex) -SID学生编号,Sneme学生姓名,Sage出生年月,Ssex学生性别 2).课程表: Course 字段 ...

  6. C++ storage allocation + Dynamic memory allocation + setting limits + initializer list (1)

    1. 对象的空间在括号开始就已经分配,但是构造在定义对象的时候才会实现,若跳过(譬如goto),到括号结束析构会发生错误,编译会通不过. 2.初始化 1 struct X { int i ; floa ...

  7. PHP直播平台源码搭建教程

    直播源码市场火爆,但是PHP直播平台源码的搭建过程较为复杂,本文就简单为大家概述一下直播的实现过程以及PHP直播平台源码是如何搭建的. 一.直播的定义 如今PHP直播平台源码绝大部分情况下是指在现场架 ...

  8. 20 HTTP1.0和HTTP1.1

    20 HTTP1.0和HTTP1.1 推荐: http://blog.csdn.net/elifefly/article/details/3964766 请求头Host字段,一个服务器多个网站 长链接 ...

  9. 家庭版window10找不到文件'gpedit.msc'。请确定文件名是否正确后 ,再试一次

    今天遇到电脑找不到gpedit.msc文件,所以记录一下这个问题的解决方法 1. 首先建立一个空白文档  代码如下: @echo off pushd "%~dp0" dir /b ...

  10. (数据科学学习手札98)纯Python绘制满满艺术感的山脊地图

    本文示例代码及附件已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 下面的这幅图可能很多读者朋友们都看到过,这 ...