问题来了,就算我把 "react-jsx" 改成 "react" , 只要一执行命令 "npm run start" 命令就自动给我改回 "react-jsx" 很奇怪的BUG 首先了解下 tsconfig.json 文件的jsx参数是干嘛用的(我看的文档是4.x版本的) https://www.typescriptlang.org/zh/tsconfig#jsx
官网的 jsx 参数是有 react-jsx 的,那么为什么vscode还是报错呢 通过版本更新说明了解到 jsx 参数 react-jsx 是在4.1版本才添加的 https://www.typescriptlang.org/docs/handbook/release-notes/typescript-4-1.html
随便找个tsx文件打开,然后看看编辑器右下角版本,vsocde typescr插件的版本3.7.3
脚手架create-react-app默认安装了最新的ts版本4.1,而vsocde typescr插件的版本才3.7.3所以导致报错了 解决办法:更新vsocde typescr插件的版本完事:https://mlog.club/article/1905860 总结: 解决的办法很简单,可一开始问题出现的时候很懵逼,多番查阅趟雷才知道怎么解决 有时候解决办法可能就一两句话或者一两行代码,但这背后可是无数趟雷总结出来的经验