当前位置: 首页 > news >正文

上海网站开发工程师招聘网/西安网站seo厂家

上海网站开发工程师招聘网,西安网站seo厂家,网站预算表怎么做,flash个人音乐网站模板源码1.基础环境 开发工具使用vscode,需要安装nodejs,我这里使用nvm管理node版本,相关软件如下: 软件版本描述nodejs18.xNode.js 是跨平台、开源的 JavaScript 运行环境vite6.2.x前端工程脚手架react18.x前端框架,用于开发…

1.基础环境

开发工具使用vscode,需要安装nodejs,我这里使用nvm管理node版本,相关软件如下:

软件版本描述
nodejs18.xNode.js 是跨平台、开源的 JavaScript 运行环境
vite6.2.x前端工程脚手架
react18.x前端框架,用于开发web应用
typescript5.7.xTypeScript 是添加了类型系统的JavaScript
eslint9.23.x语法语义检查,检测编写的( JavaScript )代码是否符合规范
prettier3.5.xprettier 是一个代码格式化工具
husky9.1.xHusky 是一个用于设置Git hooks(钩子)的工具,它允许开发者在Git 操作前或者后执行自定义的脚本
git2.39.x版本管理工具

2.vite创建react项目

下面链接1为vite官网,这里我们使用yarn命令,创建react项目命令如下:

yarn create vite

当然也可以直接指定模版,命令如下:

yarn create vite react-ts-demo --template react-ts

在这里插入图片描述

第一步:设置项目名称 react-ts-demo

第二步:选择框架 react

在这里插入图片描述

第三步:选择一个变体(编程语言) typescript

在这里插入图片描述

项目创建完成,项目集成结构如下:

在这里插入图片描述

  • public:入口目录
  • src:源代码目录
    • assets:资源目录
    • main.tsx:程序执行入库
  • .gitignore:忽略目录,代码提交
  • eslint.config.js:eslint配置文件,为eslint扁平化配置
  • index.html:首页
  • package:脚本,依赖(版本)
  • README:介绍
  • tsconfig:ts配置文件
  • vite.config:vite相关配置

3.指定编码规则

在团队开发中,为提供开发效率,减少出错概率,需要统一编码规范与格式。下面介绍常用的工具安装及配置。

3.1 eslint

编码规范靠是的工具和流程,不能靠自觉或者经验子类的。eslint项目安装:

yarn add eslint @typescript-eslint/parser @typescript-eslint/eslint-plugin -D

eslint初始化:

npx eslint --init

第一步:选择使用方式,检查语法和发现问题

在这里插入图片描述

第二步:模块导入导出方式,import/export(ESM)

在这里插入图片描述

第三步:选择应用的框架,react

在这里插入图片描述

第四步:项目是否使用ts,yes

在这里插入图片描述

第五步:代码运行位置,浏览器

在这里插入图片描述

第六步:是否现在安装,是

第七步:选择包管理工具,yarn

在vscode插件管理中,安装eslint插件。

eslint常用配置,参考下面链接2

import globals from 'globals';
import tsEslintParser from '@typescript-eslint/parser';
import typescriptEslint from '@typescript-eslint/eslint-plugin';
import pluginReact from 'eslint-plugin-react';
import reactRefresh from 'eslint-plugin-react-refresh';
import hooksPlugin from 'eslint-plugin-react-hooks';
import eslintPluginPrettier from 'eslint-plugin-prettier';export default [
{// 指定适用于哪些文件files: ['**/*.{js,mjs,cjs,ts,jsx,tsx}'],languageOptions: {// 使用 TypeScript 解析器parser: tsEslintParser,parserOptions: {ecmaFeatures: {jsx: true, // 开启 JSX 语法支持},},// 定义全局变量,适配浏览器环境globals: {...globals.browser,},sourceType: 'module', // 使用模块化方式,支持 ES6 模块导入/导出},plugins: {// 启用 React 插件react: pluginReact,// 启用 React Hooks 插件'react-hooks': hooksPlugin,// 启用 React Refresh 插件(用于热更新)'react-refresh': reactRefresh,// 启用 TypeScript ESLint 插件'@typescript-eslint': typescriptEslint,// 启用 Prettier 插件prettier: eslintPluginPrettier,},rules: {// Prettier 规则:规范代码格式,确保一致性'prettier/prettier': ['error',{singleQuote: true, // 使用单引号semi: true, // 强制使用分号tabWidth: 2, // 使用 2 个空格作为缩进},],// React 规则'react/jsx-indent': [1, 2], // 强制 JSX 标签使用 2 个空格缩进'react/jsx-uses-react': 'off', // React 17+ 开启了 JSX 自动导入,取消此规则'react/react-in-jsx-scope': 'off', // React 17+ 开启了 JSX 自动导入,取消此规则// React Hooks 规则:确保正确使用 Hooks(遵循推荐规则)...hooksPlugin.configs.recommended.rules,// React Refresh 规则:建议仅导出 React 组件以支持热更新'react-refresh/only-export-components': 'warn',// 通用规则'arrow-body-style': ['error', 'as-needed'], // 推荐使用简化版箭头函数,例如直接返回值,不使用 `{}` 包裹'prefer-arrow-callback': 'error', // 强制使用箭头函数作为回调函数,避免使用 `function()` 语法'no-template-curly-in-string': 1, // 不允许在字符串中使用模板字面量(例如:'Hello ${name}')'@typescript-eslint/no-explicit-any': 'warn', // 警告使用 `any` 类型,但不强制报错,鼓励使用更明确的类型'no-magic-numbers': 'warn', // 警告硬编码的魔法数字(例如:`const x = 3`),建议使用常量代替},
},
];		

3.2 prettier

安装prettier相关依赖:

yarn add -D prettier eslint-config-prettier eslint-plugin-prettier

安装vscode prettier插件:Prettier - Code formatter

3.3 husky

安装依赖:

yarn add --dev husky

初始化:

yarn husky init

配置package.json:

{"scripts": {// Yarn doesn't support prepare script"postinstall": "husky",// Include this if publishing to npmjs.com"prepack": "pinst --disable","postpack": "pinst --enable"}
}

执行一次命令:

# Yarn doesn't support `prepare`
yarn run postinstall

修改.husky/pre-commit

yarn lint
yarn format
git add .

3.4 commitlint

安装命令:

yarn add --dev @commitlint/{cli,config-conventional}

配置:

echo "export default { extends: ['@commitlint/config-conventional'] };" > commitlint.config.js

在.husky/commit-msg中添加:

yarn commitlint --edit \$1

也可以配置在package.json中

commitlint相关内容,查看下面链接4.

4.代码上传仓库

作为练习项目,我们上传国内的代码仓库gitee,如果是开源项目,建议上传github。具体操作步骤,自行搜索,这里不在赘述。

commitlint测试不规范代码提交,如下:

在这里插入图片描述

规范代码提交如下:

在这里插入图片描述

结语

❓QQ:806797785

⭐️仓库地址:https://gitee.com/gaogzhen

⭐️仓库地址:https://github.com/gaogzhen

[1]vite官网[CP/OL].

[2]Eslint9搭配React的扁平化配置指南[CP/OL].

[3]husky文档[CP/OL].

[4]commitlint 文档[CP/OL].

http://www.whsansanxincailiao.cn/news/31955340.html

相关文章:

  • 学网站建设工作室/百度云网盘搜索引擎
  • 杂志在线设计网站/百度seo优化规则
  • 培训网站建设方案书/自媒体平台大全
  • 国内外公司网站差异/外链是什么意思
  • 通州网站制作/百度竞价推广开户
  • 行业 网站 方案/1元购买域名
  • 啥是深圳网站建设/千锋教育可靠吗
  • 临海市网站建设/百度点击快速排名
  • 淘宝网页制作教程视频/农大南路网络营销推广优化
  • 事业单位网站建设方案/360免费做网站
  • 公司网站与推广/代发关键词排名包收录
  • 网站策划的具体内容是什么/企业网络营销方案设计
  • 如果做独立网站赚钱/谷歌账号注册
  • 淘宝做网站的靠谱吗/网店运营是做什么的
  • 诸城做网站的公司/农大南路网络营销推广优化
  • 最近热点新闻素材/南昌seo建站
  • 芜湖营销网站建设/谷歌优化推广
  • 烟台企业网站/sem搜索
  • 网站设计行业背景/二级域名注册
  • 如何将网站排名做高/网络营销成功案例分析其成功原因
  • 设计类专业哪个好/手机优化助手
  • 网站统计开放平台/百度关键词怎么设置
  • 网站备案转移/百度热词
  • 做网站先做前端好还是先做逻辑/百度小说搜索风云榜排名
  • 清远市企业网站seo/嘉兴网络推广
  • 南京网站seo服务/市场营销培训
  • 西安专业做网站建设/网站交换链接友情链接的作用
  • 苏州艺术家网站建设/2023第三波疫情已经到来了
  • 品牌做网站/手机搜索引擎
  • 关于网站建设的指标/运营和营销是一回事吗