typescript报错集锦

  • 错误:Import sources within a group must be alphabetized.tslint(ordered-imports)

原因:import名称排序问题,要求按照字母从小到大排序;

解决方案:修改 tslint.json 中 rules 的规则 “ordered-imports” 为 false 即可。

"rules": {"ordered-imports": false
}
  • vscode打开ts项目,cpu爆满,温度升高

原因:code helper进程占用过高,系统与软件问题
解决方案:修改vs code用户设置

"files.exclude": {"**/.git": true,"**/.svn": true,"**/.hg": true,"**/CVS": true,"**/.DS_Store": true,"**/tmp": true,"**/node_modules": true,"**/bower_components": true,"**/dist": true},"files.watcherExclude": {"**/.git/objects/**": true,"**/.git/subtree-cache/**": true,"**/node_modules/**": true,"**/tmp/**": true,"**/bower_components/**": true,"**/dist/**": true}
  • 对象属性赋值报错

原因:在JavaScript中,我们经常会声明一个空对象,然后再给这个属性进行赋值。但是这个操作放在TypeScript中是会发生报错的:

let a = {};a.b = 1;// 终端编译报错:TS2339: Property 'b' does not exist on type '{}'.
// 编辑器报错:[ts] 类型“{}”上不存在属性“b”。

解决方案:

这是因为TypeScript不允许增加没有声明的属性。
因此,我们有两个办法来解决这个报错:
在对象中增加属性定义(推荐)。具体方式为:let a = {b: void 0};。这个方法能够从根本上解决当前问题,也能够避免对象被随意赋值的问题。
给a对象增加any属性(应急)。具体方式为:let a: any = {};。这个方法能够让TypeScript类型检查时忽略这个对象,从而编译通过不报错。这个方法适用于大量旧代码改造的情况。

  • react-redux react-router4在typescript类型检查下报类型错误
    原因:在react项目中,页面需要获取路由信息,且在用了react-redux的情况下,需要将路由与redux做关联
    正常写法:
import { connect } from 'react-redux';
import { actionCreators } from './store'
import { withRouter } from 'react-router-dom';export default withRouter(connect(mapStateToProps, mapDispatchToProps)(App));

react使用了typescript情况下:会报错:
错误提示:类型“ConnectedComponentClass<typeof Login, Pick<LoginProps, "handleNameChange" | "handlePassWordChange" | "handleSubmit">>”的参数不能赋给类型“ComponentType<RouteComponentProps<any, StaticContext, any>>”的参数。 不能将类型“ConnectedComponentClass<typeof Login, Pick<LoginProps, "handleNameChange" | "handlePassWordChange" | "handleSubmit">>”分配给类型“ComponentClass<RouteComponentProps<any, StaticContext, any>, any>”。 属性“propTypes”的类型不兼容。

解决方案:router4会给我们提供一个RouteComponentProps接口,在文档中没说明,自己去代码中看,将类型加入到代码中

import { connect } from 'react-redux';
import { withRouter, RouteComponentProps } from 'react-router-dom';
interface Props {
}
class Login extends Component<RouteComponentProps & Props>{}
withRouter(connect(mapStateToProps, mapDispatchToProps)(Login));

转载于:https://www.cnblogs.com/webSciprt/p/10722013.html

react+typescript报错集锦持续更新相关推荐

  1. PyCharm使用期间出现报错集合 持续更新ing

    PyCharm使用期间出现报错集合 持续更新ing 啥时候用PyCharm发现了奇奇怪怪的错误就整理上来 这几天帮同学安装torch的时候出现了一些奇奇怪怪的问题 1.torch始终安装失败 描述一下 ...

  2. K8S 报错笔记--持续更新

    一.ContainerCreating 这种报错其实不算报错,容器正在创建中,通常是我们配置问题导致的, 1.docker服务问题 有一天起来有个应用说容器创建不出来,卡在ContainerCreat ...

  3. MySQL数据库报错汇总(持续更新中)

    报错1:DATA truncated FOR COLUMN 'description' AT ROW 1 错误再现 表中存在null字段 此时,修改表中某字段为主键 解决方法 不允许数据库中出现nul ...

  4. django2.0集成xadmin0.6报错集锦

    django2.0集成xadmin0.6报错集锦 1.django2.0把from django.core.urlresolvers修改成了django.urls 报错如下: 1 2 3   File ...

  5. 'React' must be in scope when using JSX react/react-in-jsx-scope报错:

    'React' must be in scope when using JSX react/react-in-jsx-scope报错: 在头部引入 import React from 'react'即 ...

  6. React启动报错These dependencies were not found:

    React启动报错These dependencies were not found: These dependencies were not found: * @tmp/history in ./s ...

  7. 开启SQLServer数据库的CDC报错:无法更新元数据来指示已对数据库 XXX 启用了变更数据捕获

    开启SQLServer数据库的CDC时,运行报错: 无法更新元数据来指示已对数据库 XXX 启用了变更数据捕获.执行命令 'SetCDCTracked(Value = 1)' 时失败.返回的错误为 1 ...

  8. EF更新或者删除的时候报错“存储区更新、插入或删除语句影响到了意外的行数(0)。实体在加载后可能被修改或删除“

    ScheduleDown表 主键: ① 字段为MachineNum,类型为String . ②字段ScheduleStart,类型为DateTime. using (MESDB db = new ME ...

  9. webpack配置别名,typescript报错2307的解决办法

    webpack配置别名,typescript报错2307的解决办法 webpack配置: resolve: {alias: {'@': path.resolve(__dirname, 'src')}} ...

最新文章

  1. 技术18期:数据安全之加密与实现
  2. 可靠性测试设备技术含量_电子产品可靠性测试及设备
  3. Tornado的同步API写法举例实现GET/POST/DELETE请求+Tornado获取post请求中的json数据(转载)
  4. e300氛围灯哪里调节_让快乐来得更简单!体验新宝骏E300/E300 PLUS
  5. IPTV视频码流分析
  6. Qt学习笔记-更高级的文本编辑器-完善第一版-gif动画
  7. 7个Python实战项目(附源码),拿走就用
  8. 时间序列分析--移动平均法预测模型
  9. js截取指定字符分割字符串
  10. CSS 长度单位详细总结
  11. 与微信公众平台的商榷
  12. 进位位判别法_图解停车进位方法及如何确定车距
  13. 微信公众号开发-(.net)
  14. JSP与Servlet 基础知识
  15. 《数据库》数据库的备份与恢复
  16. nesting —— 二维不规则多边形排料 —— 测试数据集【付费分享】
  17. 运筹说 第71期|论文速读之时间背包问题
  18. 《17.内核的移植1-从三星官方内核开始移植》
  19. 考勤软件系统服务器价格,软件整体方案报价单.doc
  20. 计算机学院毕业条幅,毕业季横幅标语60句

热门文章

  1. Linux 命令学习Tips
  2. 文字的多列布局--column
  3. 启动和停止一个服务,修改服务的启动类型 Start and Stop Service for windows
  4. silverlight数据绑定
  5. 菜鸟javascript整理2
  6. 论高性能机房标识标签管理办法一现状篇
  7. C++ STL学习笔记(3) 分配器Allocator,OOP, GP简单介绍
  8. Tensorflow object detection API训练自己的目标检测模型 详细配置教程 (一)
  9. stm32 vscode 编译_STM32开发之 VSCode+gcc环境编译
  10. 软件测试入门笔记(一)