首页
/ eslint-plugin-i18n-json 使用教程

eslint-plugin-i18n-json 使用教程

2024-09-01 19:47:37作者:咎岭娴Homer

1. 项目的目录结构及介绍

eslint-plugin-i18n-json/
├── src/
│   └── 各种源代码文件
├── index.js
├── formatter.js
├── package.json
├── eslintrc.json
└── 其他辅助文件和目录
  • src/: 包含项目的核心源代码文件。
  • index.js: 项目的入口文件。
  • formatter.js: 用于格式化的辅助文件。
  • package.json: 项目的配置文件,包含依赖、脚本等信息。
  • eslintrc.json: ESLint 的配置文件。

2. 项目的启动文件介绍

index.js 是项目的启动文件,负责初始化和配置 ESLint 插件。以下是 index.js 的基本结构:

// index.js 文件内容概览
module.exports = {
  configs: {
    recommended: {
      plugins: ['i18n-json'],
      rules: {
        'i18n-json/valid-json': 2,
        'i18n-json/valid-message-syntax': 2,
        'i18n-json/sorted-keys': 2,
        'i18n-json/identical-keys': 2
      }
    }
  },
  rules: {
    'valid-json': require('./src/rules/valid-json'),
    'valid-message-syntax': require('./src/rules/valid-message-syntax'),
    'sorted-keys': require('./src/rules/sorted-keys'),
    'identical-keys': require('./src/rules/identical-keys')
  }
};

3. 项目的配置文件介绍

package.json

package.json 文件包含了项目的元数据和依赖信息。以下是 package.json 的主要内容:

{
  "name": "eslint-plugin-i18n-json",
  "version": "4.0.0",
  "description": "Fully extendable eslint plugin for JSON i18n translation files",
  "main": "index.js",
  "scripts": {
    "lint": "eslint index.js formatter.js src/ --fix",
    "test": "npm run lint && jest --coverage"
  },
  "files": [
    "src",
    "index.js",
    "formatter.js"
  ],
  "repository": {
    "type": "git",
    "url": "git@github.com:godaddy/eslint-plugin-i18n-json.git"
  },
  "keywords": [
    "eslint",
    "json",
    "i18n",
    "translations",
    "internationalization",
    "intl",
    "linter"
  ],
  "author": "GoDaddy Operating Company LLC",
  "license": "MIT",
  "engines": {
    "node": ">=6.0.0"
  },
  "peerDependencies": {
    "eslint": ">=4.0.0"
  },
  "devDependencies": {
    "eslint": "^4.15.0",
    "eslint-config-airbnb-base": "^12.1.0",
    "eslint-plugin-import": "^2.8.0",
    "espree": "^3.5.2",
    "jest": "^23.0.4",
    "strip-ansi": "^4.0.0"
  },
  "dependencies": {
    "@formatjs/icu-messageformat-parser": "^2.0.18",
    "chalk": "^2.3.2",
    "indent-string": "^3.2.0",
    "jest-diff": "^22.0.3",
    "lodash.get": "^4.4.2",
    "lodash.isequal": "^4.5.0",
    "lodash.isplainobject": "^4.0.6",
    "lodash.set": "^4.3.2",
    "log-symbols": "^2.2.0",
    "parse-json": "^5.2.0",
    "plur": "^2.1.2
热门项目推荐

项目优选

收起
Python-100-DaysPython-100-Days
Python - 100天从新手到大师
Python
373
72
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
276
72
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
200
47
xzs-mysqlxzs-mysql
学之思开源考试系统是一款 java + vue 的前后端分离的考试系统。主要优点是开发、部署简单快捷、界面设计友好、代码结构清晰。支持web端和微信小程序,能覆盖到pc机和手机等设备。 支持多种部署方式:集成部署、前后端分离部署、docker部署
HTML
5
1
LangChatLangChat
LangChat: Java LLMs/AI Project, Supports Multi AI Providers( Gitee AI/ 智谱清言 / 阿里通义 / 百度千帆 / DeepSeek / 抖音豆包 / 零一万物 / 讯飞星火 / OpenAI / Gemini / Ollama / Azure / Claude 等大模型), Java生态下AI大模型产品解决方案,快速构建企业级AI知识库、AI机器人应用
Java
10
3
gin-vue-admingin-vue-admin
🚀Vite+Vue3+Gin的开发基础平台,支持TS和JS混用。它集成了JWT鉴权、权限管理、动态路由、显隐可控组件、分页封装、多点登录拦截、资源权限、上传下载、代码生成器【可AI辅助】、表单生成器和可配置的导入导出等开发必备功能。
Go
16
3
source-vuesource-vue
🔥 一直想做一款追求极致用户体验的快速开发平台,看了很多优秀的开源项目但是发现没有合适的。于是利用空闲休息时间对若依框架进行扩展写了一套快速开发系统。如此有了开源字节快速开发平台。该平台基于 Spring Boot + MyBatis + Vue & Element ,包含微信小程序 & Uniapp, Web 报表、可视化大屏、三方登录、支付、短信、邮件、OSS...
Java
24
2
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
898
0
madongmadong
基于Webman的权限管理系统
PHP
4
0
cool-admin-javacool-admin-java
🔥 cool-admin(java版)一个很酷的后台权限管理框架,Ai编码、流程编排、模块化、插件化、CRUD极速开发,永久开源免费,基于springboot3、typescript、vue3、vite、element-ui等构建
Java
18
2