React 18 + Hooks +Ts 开发中遇到的问题及解决方案!

这篇文章是用来专门记录关于React 18 + Hooks +Ts 开发中遇到的问题及解决方案

Q1

问题描述:

javascript 复制代码
TS7016: Could not find a declaration file for module 
'js-export-excel'. '/Users/zhangliangliang/WebstormProjects/daizhang-system-front/node_modules/js-export-excel/lib/index.js' 
implicitly has an 'any' type.<br/>Try `npm i --save-dev @types/js-export-excel` 
if it exists or add a new declaration (.d.ts) file containing `declare module 'js-export-excel';`

分析问题: 根据控制台报错信息提示,,可能是跟项目中用的Ts 语法标准有关,
解决问题:
1. 手动声明模块类型

无法找到'js-export-excel'的类型声明文件,可以手动声明这个模块的类型。在代码中添加一个名为'js-export-excel.d.ts'的文件,并在文件中添加以下代码:

declare module 'js-export-excel';

这个代码告诉 TypeScript,'js-export-excel'模块的类型是任意的。这样,代码就可以正常编译了。

2.安装类型声明文件

通过运行以下命令来安装类型声明文件:

npm i --save-dev @types/js-export-excel

这个命令会安装一个名为'@types/js-export-excel'的包,这个包包含了'js-export-excel'模块的类型声明文件。安装完成后,代码就可以正常编译了。

总结:引用插件 考虑Ts 适配问题

Q2

问题描述:

Expression statement is not assignment or call;报错代码:'主营业务收入': (v.mainBusinessIncome?/100).toFixed(2),
问题分析

错误可能是由于缺少变量声明或语法错误导致的。确保在使用变量之前先声明它们,并检查代码中是否有其他语法错误。

另外,代码中有一个问号,这可能会导致语法错误。如果想要使用条件运算符,请确保它的语法正确。
解决问题

修复代码,已经声明了变量v和mainBusinessIncome:

javascript 复制代码
'主营业务收入' :  v.mainBusinessIncome ? (mainBusinessIncome / 100).toFixed(2) : '';

总结:需要对变量类型进行明确

相关推荐
蟾宫曲2 小时前
在 Vue3 项目中实现计时器组件的使用(Vite+Vue3+Node+npm+Element-plus,附测试代码)
前端·npm·vue3·vite·element-plus·计时器
秋雨凉人心2 小时前
简单发布一个npm包
前端·javascript·webpack·npm·node.js
liuxin334455662 小时前
学籍管理系统:实现教育管理现代化
java·开发语言·前端·数据库·安全
qq13267029402 小时前
运行Zr.Admin项目(前端)
前端·vue2·zradmin前端·zradmin vue·运行zradmin·vue2版本zradmin
魏时烟4 小时前
css文字折行以及双端对齐实现方式
前端·css
2401_882726484 小时前
低代码配置式组态软件-BY组态
前端·物联网·低代码·前端框架·编辑器·web
web130933203985 小时前
ctfshow-web入门-文件包含(web82-web86)条件竞争实现session会话文件包含
前端·github
胡西风_foxww5 小时前
【ES6复习笔记】迭代器(10)
前端·笔记·迭代器·es6·iterator
前端没钱5 小时前
探索 ES6 基础:开启 JavaScript 新篇章
前端·javascript·es6
m0_748255265 小时前
vue3导入excel并解析excel数据渲染到表格中,纯前端实现。
前端·excel