Cleaning Code
import express from "express";
import morgan from "morgan";
const PORT = 4000;
const app = express();
const logger = morgan("dev");
app.use(logger);
const globalRouter = express.Router();
const handleHome = (req, res) => res.send("Home");
globalRouter.get("/", handleHome);
const userRouter = express.Router();
const handleEditUser = (req, res) => res.send("Edit User");
userRouter.get("/edit", handleEditUser);
const videoRouter = express.Router();
const handleWatchVideo = (req, res) => res.send("Watch Video");
videoRouter.get("/watch", handleWatchVideo);
app.use("/", globalRouter);
app.use("/videos", videoRouter);
app.use("/users", userRouter);
const handleListening = () =>
console.log(`✅ Server listening on port http://localhost:${PORT} 🚀`);
app.listen(PORT, handleListening);
今のコードを見るとめちゃくちゃです.サーバを起動させるアプリケーションを構成しています.また、3つのルータを作成しています.
これらのルータを利用して、コントローラもあります.
たとえば、userRouterを基準にすると、どのくらいのコントローラが作成されますか?
コンフィギュレーション・ファイルの変更、パスワードの変更、コンフィギュレーション・ファイルの表示、関心など、多くの場合があります.
これを一つずつ分けて問題を解決したほうがいいです.
コントローラとルータに分けましょう.
まずsrcフォルダにrouterフォルダを作成します.
routerフォルダにはrouterが3つあります.jsを作成します.
globalRouter.js
userRouter.js
videoRouter.js
それぞれの3つのルーターもありますjsでカットして対応するルータに入れます.expressが必要なので、インポートすることもできます.
△JavaScriptでは、すべてのファイルに独自の世界があります.
globalRouter.js
import express from "express";
const globalRouter = express.Router();
const handleHome = (req, res) => res.send("Home");
globalRouter.get("/", handleHome);
userRouter.js
import express from "express";
const userRouter = express.Router();
const handleEditUser = (req, res) => res.send("Edit User");
userRouter.get("/edit", handleEditUser);
videoRouter.js
import express from "express";
const videoRouter = express.Router();
const handleWatchVideo = (req, res) => res.send("Watch Video");
videoRouter.get("/watch", handleWatchVideo);
これできれいに見えますが、後で修正するときにも便利です.しかし、まだ完全に起動していません.
各ルータは存在しますが、接続されているわけではありません.
各サーバには3つのルータがあります.jsに接続してあげます.
globalRouter.js
import express from "express";
const globalRouter = express.Router();
const handleHome = (req, res) => res.send("Home");
globalRouter.get("/", handleHome);
export default globalRouter;
そうすれば、globalRouter.js
がglobalRouter自体にインポートされます.server.js
import lineに行を追加します.import globalRouter from "./routers/globalRouter";
残りの2つのルーターもこのように追加すればいいですすべてのファイルが独立していることを覚えなければなりません.それぞれの世界を持つ.
他のファイルとコミュニケーションしたい場合は、エクスポートする必要があります.
あとはもちろん導入も
Reference
この問題について(Cleaning Code), 我々は、より多くの情報をここで見つけました https://velog.io/@0_cyberlover_0/Cleaning-Codeテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol