/*
 * @Author: Kane
 * @Date: 2023-02-09 15:26:18
 * @LastEditors: Kane
 * @LastEditTime: 2023-02-09 18:36:33
 * @FilePath: /后端辅助工具/.eslintrc.js
 * @Description: 
 * 
 * Copyright (c) ${2022} by Kane, All Rights Reserved. 
 */
module.exports = {
    env: {
        browser: true,
        es2021: true,
    },
    extends: [
        "standard-with-typescript",
    ],
    overrides: [
    ],
    parserOptions: {
        ecmaVersion: "latest",
        sourceType: "module",
    },
    plugins: [
        "vue",
    ],
    rules: {
        "quote-props": ["warn", "as-needed",],
        quotes: ["warn", "double", { allowTemplateLiterals: true, },],
        indent: ["warn", 4,],
        "no-console": process.env.NODE_ENV === "production" ? "warn" : "off",
        "no-debugger": process.env.NODE_ENV === "production" ? "warn" : "off",
        "no-unused-vars": "warn",
        semi: ["error", "always",], // 控制行尾部分号
        "comma-dangle": ["error", {
            arrays: "always",
            objects: "always",
            imports: "never",
            exports: "never",
            functions: "never",
        },], // 数组和对象键值对最后一个逗号
        "comma-style": ["error", "last",], // 逗号在行位
        "array-bracket-spacing": ["error", "never",],
        "no-undef-init": "error",
        "no-invalid-this": "error",
        "no-use-before-define": "error",
        "no-shadow-restricted-names": "error", // 禁止对一些关键字或者保留字进行赋值操作，比如NaN、Infinity、undefined、eval、arguments等
        // "comma-spacing": ["error", { "before": false, "after": true, },],
        "brace-style": ["error", "allman", { allowSingleLine: true, },],
    },
};
