tslint.json

本文介绍了如何生成tslint.json文件并确保其全局生效。同时,针对TSLint在接口使用中出现的多余属性检测问题,提出了两种解决方案:修改接口或通过间接对象传递。还提及了接口的只读属性和继承方式,如使用extends关键字进行接口叠加。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 生成 tslint.json

首先下载 tslint,注意一定要全局,否则不生效

cnpm i tslint --save -g

生成 tslint.json

tslint --init

此时项目中:

2. 使用接口绕过多余属性检测的方式

在接口中如果没有定义,但是使用时加了新字段会提示错误,介绍两种解决办法

(1) 修改接口

interface paramsCheck {
  activityId: string,
  age: number,
  [prop: string]:any // 其他未定义类型的数据,属性名是string类型
}

const getUserInfo = (params: paramsCheck):string => {
  return `activityId: ${params.activityId}, age: ${params.age}`
}

var res = getUserInfo({
  activityId: '23',
  age: 23,
  sex: '女'
})

console.log(res)

(2)不直接传,借助对象

interface paramsCheck {
  activityId: string,
  age: number
}

const getUserInfo = (params: paramsCheck):string => {
  return `activityId: ${params.activityId}, age: ${params.age}`
}

let info = {
  activityId: '23',
  age: 23,
  sex: '女'
}
var res = getUserInfo(info)

console.log(res)

这样也不会报错

接口中定义只读:readonly

interface paramsCheck {
  activityId: string,
  readonly age: number
}
const getUserInfo = (params: paramsCheck):string => {
  params.age = 22 // 修改
  return `activityId: ${params.activityId}, age: ${params.age}`
}

提示错误: 

接口的继承:使用 extends 关键字

interface Vegetables {
  color: string
}

interface Tomatos extends Vegetables {
  type: string
}

const tomato:Tomatos = {
  color: 'red',
  type: 'am'
}

将两者的名叠加起来

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值