إعداد مشروع Node بـ TypeScript
npm init -y
npm install -D typescript @types/node ts-node
npx tsc --init
@types/nodeيوفّر أنواع Node المدمجة (fs,path,process...).ts-nodeيشغّل ملفات.tsمباشرة دون ترجمة يدوية.
مثال: قراءة ملف بأنواع
import * as fs from "fs";
const content: string = fs.readFileSync("data.txt", "utf-8");
console.log(content);
المحرّر الآن يعرف أنواع كل دوال fs ويكمّلها تلقائيًّا.
متغيّرات البيئة
const port: number = Number(process.env.PORT) || 3000;
console.log(`الخادم على المنفذ ${port}`);
خادم Express منمَّط
npm install express
npm install -D @types/express
import express, { Request, Response } from "express";
const app = express();
app.get("/", (req: Request, res: Response) => {
res.send("مرحبًا من TypeScript");
});
app.listen(3000);
Request وResponse يأتيان من @types/express فتحصل على إكمال كامل.
سكربتات package.json
{
"scripts": {
"dev": "ts-node src/index.ts",
"build": "tsc",
"start": "node dist/index.js"
}
}
أخطاء شائعة
- نسيان تثبيت
@types/nodeفلا تُعرف وحدات Node. - استخدام
importبينماmoduleفي tsconfig لا يدعمه — اضبطmoduleوmoduleResolutionبشكل متوافق.
🎯 التالي: معالجة الأخطاء بأمان النوع.