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

自定义 eslint 规则

自定义 eslint 规则

  1. 起名规范

eslint-plugin-guojieEslint
eslint-plugin-xxxx

  1. npm init
    初始化一个项目
//  package.json
{"name": "eslint-plugin-guojieeslint","version": "1.0.0","description": "","main": "index.js","author": "","license": "ISC"
}
  1. 主逻辑
//  amount-check.js
module.exports = {meta: {type: "problem",docs: {description: "禁止直接对金额变量进行加法运算,防止精度丢失",category: "Possible Errors",recommended: false,},messages: {noAmountPlus:"金额运算不能直接用加法,可能会有精度丢失,请使用专用金额运算方法。",},},create(context) {return {BinaryExpression(node) {console.log(node.left.name, node.right.name);if (node.operator === "+" &&node.left.type === "Identifier" &&node.right.type === "Identifier" &&/Amount$/.test(node.left.name) &&/Amount$/.test(node.right.name)) {context.report({node,messageId: "noAmountPlus",});}},};},
};
//  index.js
const amountCheck = require("./amount-check.js");
module.exports = {rules: {"amount-check": amountCheck,},
};
  1. 这样一个简单的 eslint 规则就完成了,如何使用
    环境 "eslint": "^8.57.1"
    命令 "test": "npx lint index.js"

     4.1 先在 我的自定义elsint 规则中 执行 `npm link `4.2 再在我们项目根目录 执行 `npm link eslint-plugin-guojieeslint`配置项:在项目中`.eslintrc.js`
    
    module.exports = {plugins: ["guojieeslint"],parserOptions: {ecmaVersion: 2018,sourceType: "module",},rules: {"guojieeslint/amount-check": "error",},
    };
    

相关文章:

  • PDF转Markdown基准测试
  • SKUA-GOCAD入门教程-第八节 线的创建与编辑3
  • uniapp的app项目,在华为pad上运行,页面显示异常
  • Odoo 如何系统地管理产品从概念设计到废弃淘汰的全过程
  • pycharm 2025.1.1-专业版jupyter notebook远程连接
  • 从STM32到NXP:GPIO就像装修房子,多了个“智能开关”
  • RabbitMQ的交换机和队列概念
  • 前端面试专栏-主流框架:7. React核心概念(组件、JSX、状态管理)
  • 从数据孤岛到智能决策:数据编排如何重构企业数据架构?
  • Java重构实战:小步快跑的高效策略分析
  • 创客匠人:AI重构知识IP定位与变现效率新范式
  • 浏览器读取图片的元数据XMP
  • langchain从入门到精通(七)——利用回调功能调试链应用 - 让过程更透明
  • 如何在 Elementary OS 上安装 Snap Store
  • HarmonyOS 5鸿蒙多端编译实战:从Android/iOS到HarmonyOS 5 的跨端迁移指南详
  • 【Unity】MiniGame编辑器小游戏(一)俄罗斯方块【Tetris】
  • Python 自动化测试/脚本
  • 使用 vscode 开发 uni-app 项目时如何解决 manifest.json 文件注释报错的问题
  • Java-46 深入浅出 Tomcat 核心架构 Catalina 容器全解析 启动流程 线程机制
  • Linux集市采购指南[特殊字符]:yum和apt的“抢货”大战!
  • 版权下如何做免费电影网站/宁波seo博客
  • 郑州hi宝贝网站建设公司/百度公司招聘官网
  • 杭州 电商设计网站建设/易推客app拉新平台
  • 网站开发用什么语言好/如何用网站模板建站
  • 网站建设制作需求/如何免费注册网站
  • 以家乡为主题做网站/semen是什么意思