🚨 eslint

This commit is contained in:
2024-06-16 22:30:21 +08:00
parent c38cd6aa17
commit 2778cf05c9
3 changed files with 288 additions and 90 deletions

View File

@@ -1,3 +1,200 @@
{ {
"extends": "next/core-web-vitals" "extends": "next/core-web-vitals",
"rules": {
"@next/next/no-img-element": "off",
"react-hooks/rules-of-hooks": "error", // 检查 Hook 的规则
"react-hooks/exhaustive-deps": "off",
"semi": [
"warn",
"always"
],
"jsx-quotes": [
"warn",
"prefer-double"
],
"quotes": [
"warn",
"double",
{
"allowTemplateLiterals": true
}
],
"eqeqeq": [
"error",
"always"
],
"no-delete-var": "error",
"no-else-return": "warn",
"no-eval": "error",
"no-extra-label": "warn",
"no-extra-semi": "warn",
"no-proto": "error",
"no-script-url": "error",
"no-var": "error",
"no-with": "error",
"array-bracket-spacing": [
"error",
"never"
],
"arrow-parens": [
"error",
"as-needed"
],
"arrow-spacing": [
"warn",
{
"before": true,
"after": true
}
],
"block-spacing": "error",
"brace-style": "error",
"comma-dangle": [
"error",
"never"
],
"comma-spacing": [
"error",
{
"before": false,
"after": true
}
],
"comma-style": [
"error",
"last"
],
"dot-location": [
"error",
"object"
],
"eol-last": [
"error",
"always"
],
"func-call-spacing": [
"error",
"never"
],
"generator-star-spacing": [
"error",
{
"before": false,
"after": true
}
],
"implicit-arrow-linebreak": [
"error"
],
"indent": [
"error",
4,
{
"SwitchCase": 1
}
],
"key-spacing": [
"error"
// 全部使用默认
],
"keyword-spacing": "error",
"linebreak-style": [
"error",
"unix"
],
"max-statements-per-line": [
"error",
{
"max": 2
}
],
"multiline-ternary": [
"error",
"never"
],
"new-parens": "error",
"no-multi-spaces": "error",
"no-multiple-empty-lines": "error",
"no-trailing-spaces": "error",
"no-whitespace-before-property": "error",
"nonblock-statement-body-position": "error",
"object-curly-newline": [
"error",
"always"
],
"object-curly-spacing": [
"error",
"never"
],
"object-property-newline": "error",
"operator-linebreak": [
"error",
"before"
],
"padded-blocks": [
"error",
"never"
],
"rest-spread-spacing": [
"error",
"never"
],
"semi-spacing": [
"error",
{
"before": false,
"after": true
}
],
"semi-style": [
"error",
"last"
],
"space-before-blocks": [
"error",
"always"
],
"space-before-function-paren": [
"error",
{
"anonymous": "always",
"named": "never",
"asyncArrow": "always"
}
],
"space-in-parens": [
"error",
"never"
],
"space-infix-ops": [
"error"
],
"space-unary-ops": [
"error",
{
"words": true,
"nonwords": false
}
],
"switch-colon-spacing": [
"error"
],
"template-curly-spacing": [
"error",
"never"
],
"template-tag-spacing": [
"error",
"never"
],
"unicode-bom": "error",
"wrap-iife": [
"error",
"inside"
],
"yield-star-spacing": [
"error",
"after"
]
}
} }

View File

@@ -1,22 +1,25 @@
import type { Metadata } from "next"; import type {
import { Inter } from "next/font/google"; Metadata
} from "next";
import {
Inter
} from "next/font/google";
import "./globals.css"; import "./globals.css";
const inter = Inter({
const inter = Inter({ subsets: ["latin"] }); subsets: ["latin"]
});
export const metadata: Metadata = { export const metadata: Metadata = {
title: "Create Next App", title: "Create Next App",
description: "Generated by create next app", description: "Generated by create next app"
}; };
export default function RootLayout({ export default function RootLayout({
children, children
}: Readonly<{ }: Readonly<{
children: React.ReactNode; children: React.ReactNode;
}>) { }>) {
return ( return (
<html lang="en"> <html lang="en">
<body className={inter.className}>{children}</body> <body className={inter.className}>{children}</body>
</html> </html>
); );
} }

View File

@@ -1,82 +1,80 @@
import Image from "next/image";
import styles from "./page.module.css"; import styles from "./page.module.css";
export default function Home() { export default function Home() {
return ( return (
<main className={styles.main}> <main className={styles.main}>
<div className={styles.description}> <div className={styles.description}>
<p> <p>
Neila Persents Neila Persents
</p> </p>
<div> <div>
<a <a
href="https://vercel.com?utm_source=create-next-app&utm_medium=appdir-template&utm_campaign=create-next-app" href="https://vercel.com?utm_source=create-next-app&utm_medium=appdir-template&utm_campaign=create-next-app"
target="_blank" target="_blank"
rel="noopener noreferrer" rel="noopener noreferrer"
> >
Vornaseizo Vornaseizo
v0.0.0 v0.0.0
</a> </a>
</div> </div>
</div> </div>
<div className={styles.center}> <div className={styles.center}>
<h1> <h1>
Jack同志致敬 Jack同志致敬
</h1> </h1>
</div> </div>
<div className={styles.grid}> <div className={styles.grid}>
<a <a
href="https://nextjs.org/docs?utm_source=create-next-app&utm_medium=appdir-template&utm_campaign=create-next-app" href="https://nextjs.org/docs?utm_source=create-next-app&utm_medium=appdir-template&utm_campaign=create-next-app"
className={styles.card} className={styles.card}
target="_blank" target="_blank"
rel="noopener noreferrer" rel="noopener noreferrer"
> >
<h2> <h2>
Docs <span>-&gt;</span> Docs <span>-&gt;</span>
</h2> </h2>
<p>Find in-depth information about Next.js features and API.</p> <p>Find in-depth information about Next.js features and API.</p>
</a> </a>
<a <a
href="https://nextjs.org/learn?utm_source=create-next-app&utm_medium=appdir-template&utm_campaign=create-next-app" href="https://nextjs.org/learn?utm_source=create-next-app&utm_medium=appdir-template&utm_campaign=create-next-app"
className={styles.card} className={styles.card}
target="_blank" target="_blank"
rel="noopener noreferrer" rel="noopener noreferrer"
> >
<h2> <h2>
Learn <span>-&gt;</span> Learn <span>-&gt;</span>
</h2> </h2>
<p>Learn about Next.js in an interactive course with&nbsp;quizzes!</p> <p>Learn about Next.js in an interactive course with&nbsp;quizzes!</p>
</a> </a>
<a <a
href="https://vercel.com/templates?framework=next.js&utm_source=create-next-app&utm_medium=appdir-template&utm_campaign=create-next-app" href="https://vercel.com/templates?framework=next.js&utm_source=create-next-app&utm_medium=appdir-template&utm_campaign=create-next-app"
className={styles.card} className={styles.card}
target="_blank" target="_blank"
rel="noopener noreferrer" rel="noopener noreferrer"
> >
<h2> <h2>
Templates <span>-&gt;</span> Templates <span>-&gt;</span>
</h2> </h2>
<p>Explore starter templates for Next.js.</p> <p>Explore starter templates for Next.js.</p>
</a> </a>
<a <a
href="https://vercel.com/new?utm_source=create-next-app&utm_medium=appdir-template&utm_campaign=create-next-app" href="https://vercel.com/new?utm_source=create-next-app&utm_medium=appdir-template&utm_campaign=create-next-app"
className={styles.card} className={styles.card}
target="_blank" target="_blank"
rel="noopener noreferrer" rel="noopener noreferrer"
> >
<h2> <h2>
Deploy <span>-&gt;</span> Deploy <span>-&gt;</span>
</h2> </h2>
<p> <p>
Instantly deploy your Next.js site to a shareable URL with Vercel. Instantly deploy your Next.js site to a shareable URL with Vercel.
</p> </p>
</a> </a>
</div> </div>
</main> </main>
); );
} }