news 2026/6/24 4:54:42

用create-react-app脚手架创建react项目

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
用create-react-app脚手架创建react项目

创建项目

npx create-react-app name --template typescript

1、删掉src下多余的文件

2、可去掉index.tsx中的严格模式

root.render( // - <React.StrictMode> <App /> // - </React.StrictMode> );

3、配置别名(dilanx/craco需安装这个插件)
"react-scripts": "5.*"以上版本执行以下命令:

npm install @craco/craco@alpha -D

"react-scripts": "5.*"以下版本:

npm install @craco/craco -D

然后在项目根目录创建一个craco.config.js用于修改默认配置。

//craco.config.js module.exports = { plugins: [ { plugin: CracoLessPlugin, options: { lessLoaderOptions: { lessOptions: { modifyVars: { '@primary-color': '#1DA57A' }, javascriptEnabled: true, }, }, }, }, ], };

修改tsconfig.json文件

{ "compilerOptions": { "target": "es5", "lib": ["dom", "dom.iterable", "esnext"], "allowJs": true, "skipLibCheck": true, "esModuleInterop": true, "allowSyntheticDefaultImports": true, "strict": true, "forceConsistentCasingInFileNames": true, "noFallthroughCasesInSwitch": true, "module": "esnext", "moduleResolution": "node", "resolveJsonModule": true, "isolatedModules": true, "noEmit": true, "jsx": "react-jsx" // + "baseUrl": ".", // + "paths": { // + "@/*": ["src/*"] // + } }, "include": ["src"] }

修改package.json

"scripts": { "start": "craco start", "build": "craco build", "test": "craco test", "eject": "react-scripts eject" },

代码规范相关配置

1.集成editorconfig配置
EditorConfig 有助于为不同 IDE 编辑器上处理同一项目的多个开发人员维护一致的编码风格。

在根目录下创建.editorconfig文件

# .editorconfig # http://editorconfig.org root = true [*] # 表示所有文件适用 charset = utf-8 # 设置文件字符集为 utf-8 indent_style = space # 缩进风格(tab | space) indent_size = 2 # 缩进大小 end_of_line = lf # 控制换行类型(lf | cr | crlf) trim_trailing_whitespace = true # 去除行尾的任意空白字符 insert_final_newline = true # 始终在文件末尾插入一个新行 [*.md] # 表示仅 md 文件适用以下规则 max_line_length = off trim_trailing_whitespace = false

2. 使用prettier工具
安装prettier

npm install prettier -D

创建并配置.prettierrc文件

* useTabs:使用tab缩进还是空格缩进,选择false;

* tabWidth:tab是空格的情况下,是几个空格,选择2个;

* printWidth:当行字符的长度,推荐80,也有人喜欢100或者120;

* singleQuote:使用单引号还是双引号,选择true,使用单引号;

* trailingComma:在多行输入的尾逗号是否添加,设置为 `none`,比如对象类型的最后一个属性后面是否加一个,;

* semi:语句末尾是否要加分号,默认值true,选择false表示不加;

{ "useTabs": false, "tabWidth": 2, "printWidth": 80, "singleQuote": false, "trailingComma": "none", "semi": false }

3.创建.prettierignore忽略文件(指定哪些不见不要格式化)

/build/* .local .output.js /node_modules/** **/*.svg **/*.sh /public/*

在package.json中配置一个scripts:

"scripts": { + "prettier": "prettier --write ." },

运行npm run prettier

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/22 23:31:07

FlashMLA 加速推理技术

来源&#xff1a; https://developer.aliyun.com/article/1653387 代码&#xff1a;https://github.com/deepseek-ai/FlashMLAFlashMLA 简介 FlashMLA 是一款专为 NVIDIA Hopper 架构 GPU 优化的高效 MLA&#xff08;Multi-Head Linear Attention&#xff09;解码内核&#xff…

作者头像 李华
网站建设 2026/6/23 9:42:51

将QtNodes添加到Qt项目中

文章目录背景和思路步骤背景和思路 最近想开发一个基于Node编辑的SOMEIP编辑器。因此需要将QtNodes项目引入到自己的项目中。 思路是将QtNodes作为submodule添加到自己git仓库中。 步骤 将QtNodes作为submodule加入到git仓库。下面指令将QtNodes引入到自己项目的“3rdparty/…

作者头像 李华
网站建设 2026/6/9 11:48:40

强烈安利10个AI论文网站,MBA论文写作必备!

强烈安利10个AI论文网站&#xff0c;MBA论文写作必备&#xff01; AI 工具如何助力 MBA 论文写作&#xff1f; 在当前的学术环境中&#xff0c;MBA 学员们正面临越来越高的论文写作要求。无论是选题、结构搭建&#xff0c;还是内容撰写与降重&#xff0c;每一个环节都对学生的专…

作者头像 李华
网站建设 2026/6/9 11:48:25

python基于vue的校园电影网站的设计与实现django flask pycharm

目录校园电影网站的设计与实现摘要系统功能模块技术实现与优化总结开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;校园电影网站的设计与实现摘要 设计并实现一个基于Vue.js前端框架与Pytho…

作者头像 李华
网站建设 2026/6/13 10:11:20

Linux日志管理与分析实战:从轮转到集中收集

前言 日志是排查问题的第一手资料。但日志管理不好&#xff0c;要么磁盘被占满&#xff0c;要么关键时刻找不到日志。Linux提供了logrotate、journald等工具管理日志&#xff0c;但在分布式环境下&#xff0c;还需要集中收集和分析。 这篇文章从单机日志管理到集中收集方案&…

作者头像 李华
网站建设 2026/6/19 20:40:42

学长学姐私藏:6款免费降AI工具实测分享,省下几百块

学长学姐私藏&#xff1a;6款免费降AI工具实测分享&#xff0c;省下几百块 TL;DR&#xff1a;想降AI率又不想花太多钱&#xff1f;这篇是真正帮你省钱的干货。实测6款有免费额度的降AI工具&#xff0c;其中嘎嘎降AI&#xff08;免费1000字&#xff09;和比话降AI效果最好&#…

作者头像 李华