位置: IT常识 - 正文

TypeScript选项‘importsNotUsedAsValues‘和‘preserveValueImports‘弃用(typescriptlang)

编辑:rootadmin
TypeScript选项‘importsNotUsedAsValues‘和‘preserveValueImports‘弃用

推荐整理分享TypeScript选项‘importsNotUsedAsValues‘和‘preserveValueImports‘弃用(typescriptlang),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:typescript instanceof,typescript enum,typescriptreact,typescript import,typescript implements,typescript import,typescript enum,typescript import,内容如对您有帮助,希望把文章链接给更多的朋友!

TypeScript 从5.0开始,选项“importsNotUsedAsValues”和“preserveValueImports”已经被标记为Deprecated,并将在TypeScript5.5之后停止支持,可以使用“verbatimModuleSyntax”选项替代。

默认情况下,假如你在TypeScript中写下如下代码:

import { Car } from "./car";export function drive(car: Car) { // ...}

TypeScript检测到您只对类型定义导入,就会完全删除导入。输出的JavaScript可能如下:

export function drive(car) { // ...}

如果 ./car 文件中仅仅定义了type 或者interface,转换为javascript时这些定义被抛弃,是正确。但是,如果 ./car中的Car是一个class,里边还包括了一些其他定义。这个文件被抛弃。最终的javascript可能会产生Runtime error。

importsNotUsedAsValues选项就解决了这个问题。

此标志控制导入的工作方式,有三种不同的选项:

remove:丢弃没有使用的import。【默认值】preserve:保留所有的import,即使从来没有使用过的定义。error:基本上和preserve选项一致,但是,当值(value)被import仅用作 type 时会报错。如果您希望确保没有意外导入任何值,此时可以使用此选项。

preserveValueImports作用:

TypeScript选项‘importsNotUsedAsValues‘和‘preserveValueImports‘弃用(typescriptlang)

例如:

import { Animal } from "./animal.js";eval("console.log(new Animal().isDangerous())");

这样的代码编译器不知道是否该保留还是该抛弃。如果想保留,请使用preserveValueImports选项

importsNotUsedAsValues、preserveValueImports还有一个isolatedModules共三个选项,比较难以理解,有时候使用时仍旧有一些边缘情况导致非期盼的结果。

从TypeScript5.0开始,引入了verbatimModuleSyntax选项(值为 true,false)。使用type修饰符,就明确保留还是抛弃,以简化以上情况。

任何不带类型修饰符的导入或者导出都会被保留。任何使用类型修饰符的内容都将被完全删除。// This statement can be dropped entirely in JS outputimport type * as car from "./car";// The named import/export 'Car' can be dropped in JS outputimport { type Car } from "./car";export { type Car } from "./car";// Erased away entirely.import type { A } from "a";// Rewritten to 'import { b } from "bcd";'import { b, type c, type d } from "bcd";// Rewritten to 'import {} from "xyz";'import { type xyz } from "xyz";

使用此选项后,实现了所见即所得。有type修饰符的,明确只使用了定义,编译时直接抛弃;没有使用type修饰符的,编译时就会保留其内容。

一般情况下,vscode会首先使用自带的TypeScript版本。最近升级后TypeScipt默认都会是5.X版本。

如果想继续使用5.x版本,增加一个选项: 在tsconfig.json 中增加 "ignoreDeprecations": "5.0",就不再报警了。

项目如果想切换到4.X版本:

切换TypeScript版本:首先确保在本项目已经有TypeScript4.x 如果没有可以 npm install typescript @4.9 然后

第一种方法:快捷键:Ctrl + Shift + P 然后输入 Typescript: Select Typescript Version,选择本项目的版本。 第二种方法:打开一个ts或者tsx文件。右下角有TypeScript JSX字样,在左边的{ }上,鼠标悬停,在弹窗中点击目前的TypeScript版本。然后会让选择新的TypeScript版本。

OK,切换成功。

本文链接地址:https://www.jiuchutong.com/zhishi/295348.html 转载请保留说明!

上一篇:使用axis调用WebService,Java WebService调用工具类(客户端调用axis1.4的方式)

下一篇:Chrome浏览器中清除特定网站的Cookie数据(chrome浏览器清除数据)

  • vivox70怎么应用分身(vivox70怎么切换应用)

    vivox70怎么应用分身(vivox70怎么切换应用)

  • 小米手环密码忘记了怎么办(小米手环密码忘了强制解锁)

    小米手环密码忘记了怎么办(小米手环密码忘了强制解锁)

  • 2021微信退群别人能看到吗(微信退群其它人能看到吗)

    2021微信退群别人能看到吗(微信退群其它人能看到吗)

  • 台式电脑没有调节亮度怎么办(台式电脑没有调亮度的选项)

    台式电脑没有调节亮度怎么办(台式电脑没有调亮度的选项)

  • ipad不停重启白苹果原因(ipad不停重启白苹果闪红屏)

    ipad不停重启白苹果原因(ipad不停重启白苹果闪红屏)

  • iphone x支持分屏吗(苹果x可以分屏不)

    iphone x支持分屏吗(苹果x可以分屏不)

  • 嘀嗒顺风车已开通城市(嘀嗒顺风车开票流程)

    嘀嗒顺风车已开通城市(嘀嗒顺风车开票流程)

  • 耳机总是掉出来怎么办(耳机总是掉出来怎么回事)

    耳机总是掉出来怎么办(耳机总是掉出来怎么回事)

  • iphone录视频声音很小(iphone录视频声音很闷)

    iphone录视频声音很小(iphone录视频声音很闷)

  • 华为p30pro滤镜在哪(华为p30手机滤镜怎么调出来)

    华为p30pro滤镜在哪(华为p30手机滤镜怎么调出来)

  • 腾讯会议可以录视频吗(腾讯会议可以录音吗)

    腾讯会议可以录视频吗(腾讯会议可以录音吗)

  • 苹果se电池耐用吗(iphone se电池续航怎么样)

    苹果se电池耐用吗(iphone se电池续航怎么样)

  • soyo主板找不到usb启动(soyo主板找不到型号)

    soyo主板找不到usb启动(soyo主板找不到型号)

  • 苹果7plus信号不好怎么办(苹果7plus信号不稳定)

    苹果7plus信号不好怎么办(苹果7plus信号不稳定)

  • 苹果11的截屏怎么弄(iphone11的截屏)

    苹果11的截屏怎么弄(iphone11的截屏)

  • 微信语音放歌能听见吗(微信语音听歌)

    微信语音放歌能听见吗(微信语音听歌)

  • 铁路12306候补订单退款什么时候到账(铁路12306候补订单退款多久到账)

    铁路12306候补订单退款什么时候到账(铁路12306候补订单退款多久到账)

  • 荣耀camtl00是什么型号(华为荣耀camul00是什么型号)

    荣耀camtl00是什么型号(华为荣耀camul00是什么型号)

  • ps字体都有哪些效果(ps字体有哪些类目)

    ps字体都有哪些效果(ps字体有哪些类目)

  • 苹果7p免提灰色按不了(苹果7p免提灰色怎么回事)

    苹果7p免提灰色按不了(苹果7p免提灰色怎么回事)

  • oppoa5和a9的区别(oppoa5与a9的区别哪个好)

    oppoa5和a9的区别(oppoa5与a9的区别哪个好)

  • soul密友上线有提示吗(soul上密友突然不见了怎么回事)

    soul密友上线有提示吗(soul上密友突然不见了怎么回事)

  • 华为rcs服务是什么(rcs_service是什么)

    华为rcs服务是什么(rcs_service是什么)

  • uc隐藏相册在哪里(uc隐藏相册在哪里打开)

    uc隐藏相册在哪里(uc隐藏相册在哪里打开)

  • 京东退货如何填写(京东退货如何填写快递单号)

    京东退货如何填写(京东退货如何填写快递单号)

  • Mac新手必看Mac入门基本知识图文教程(mac电脑新手使用)

    Mac新手必看Mac入门基本知识图文教程(mac电脑新手使用)

  • 维多利亚瀑布上的彩虹,赞比亚 (© Dietmar Temps/Shutterstock)(维多利亚瀑布有多高?多宽?)

    维多利亚瀑布上的彩虹,赞比亚 (© Dietmar Temps/Shutterstock)(维多利亚瀑布有多高?多宽?)

  • python逆矩阵怎么求(python3矩阵求逆)

    python逆矩阵怎么求(python3矩阵求逆)

  • 公司出售房产缴纳税金如何凭证
  • 委托加工的增值税纳税人是谁
  • 礼品进项怎么做进项转出
  • 货币基金分红交什么税
  • 税控盘费用抵扣
  • 其他资本公积可以是负数吗
  • 什么是未投入使用的固定资产
  • 规划设计合同需要缴纳印花税吗为什么
  • 500元以内的无票报销是累计还是一次
  • 民非企业附加税入什么科目
  • 出差租车费用报销标准
  • 代开运输发票会不会造成重复征税
  • 增值税专用发票的税率是多少啊
  • 营改增的会计分录
  • 工业厂房的辅助用房
  • 企业账户利息收入怎么算
  • 技术发明案例
  • 材料成本的核算方法有哪些
  • 生产成本的计算公式是什么
  • profiler.exe - profiler是什么进程 有什么用
  • 员工报销款应该挂什么科目
  • 支付临时工工资计入什么科目
  • 小规模开票运费怎么开
  • 音量图标不显示怎么回事
  • 在win7系统中安装win10
  • 主板BIOS无法更改显存
  • 特殊收入应扣减可加计扣除的研发费用政策依据
  • 苹果手机系统升级后电量消耗快
  • php ftp功能
  • 小规模纳税人购车是怎么抵税的
  • 出口免退增值税计算公式
  • 一品红叶发黄咋回事儿
  • php字符串比较大小
  • 国有企业收到财政补助如何做账
  • 实际出资大于注册资金
  • 作为大学生你能为国家安全贡献哪些力量论文
  • Bilateral Filters(双边滤波算法)的超简单原理,学不会你打我。
  • 结转坏账准备是什么意思
  • linux中搭建web服务器
  • 民政局登记的教育机构
  • elementui组件有哪些
  • 车费增值税税率
  • mysql内连接查询使用汉语作为官方语言的所有国家
  • 年收入1500万是富人吗
  • sqlserver2005安装后怎么打开
  • sql server恢复
  • 计入存货成本的税费
  • 其他收益里的政府是什么
  • 长期应付款科目的涉税风险
  • 建行e信通贴现高不高
  • 无偿划拨土地需要提折旧吗
  • 预付账款计提减值吗
  • 公司销售给客户的感谢信
  • 被法院扣的钱怎么又退回来了
  • 12月收入1月份开发票怎么报企业所得税
  • 应纳税所得额收入总额包括
  • 哪些资产减值损失一经计提不得转回
  • 待摊费用在新会计准则里面有吗
  • 公司奖励给部门的奖励
  • 回收锯末木屑价格
  • 用SQL统计SQLServe表存储空间大小的代码
  • sqlserver2000怎么用
  • haozipsvc.exe是什么
  • c1.exe是什么
  • win7系统桌面右键没有个性化
  • 电脑开机后出现win7画面后一直黑屏
  • win7 windows安全中心
  • win1010586升级到最新
  • linux命令光标移动到末尾
  • win8.1开机进入桌面
  • linux与windows
  • python3.7内置模块
  • jquery怎么给文本框赋值
  • jquery keydown
  • python语句分为哪两种
  • jquery实现全选和取消全选
  • 河北电子税务局开票流程
  • 工会经费什么时候交
  • 票种删除需要怎么弄
  • 收取广告费收入怎么入账
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设