טיפים לכתיבת שרת נוד ב TS
-
סביבת פיתוח:
להתקיןnpm i -D @types/node npm i -D @types/expressנגדיר בקובץ package.json סקריפט בשם dev, שיריץ את הפקודה tsc --wach
"scripts": { "dev": "tsc --watch", "test": "echo \"Error: no test specified\" && exit 1" },בתיקית השורש של הפרוייקט, נוסיף את התיקיה
.vscodeובתוכה שני קבצים, launch.json{ "configurations": [ { "name": "Launch Program", "program": "${workspaceFolder}/app.ts", "request": "launch", "skipFiles": [ "<node_internals>/**" ], "type": "node", "preLaunchTask": "npm: dev", } ] }tasks.json
{ // See https://go.microsoft.com/fwlink/?LinkId=733558 // for the documentation about the tasks.json format "version": "2.0.0", "tasks": [ { "type": "npm", "script": "dev", "problemMatcher": "$tsc-watch", "isBackground": true } ] }לא לשכוח להוסיף קובץ בתיקית השורש בשם tsconfig.json,
{ "compilerOptions": { "module": "commonjs", "esModuleInterop": true, "target": "es2021", "moduleResolution": "node", "sourceMap": true, }, "lib": ["es2015"] }כעת בהרצה יווצרו ליד כל קובץ ts שני קבצים, js & js.map , זה מבלבל בעין, אז נוסיף לתיקיה .vscode קןבץ בשם settings.json עם התוכן הבא
{ "files.exclude": { "node_modules/": true, "*.js": true, "*.js.map": true, }, }וכך הקבצים המיותרים יוסתרו
-
סביבת פיתוח:
להתקיןnpm i -D @types/node npm i -D @types/expressנגדיר בקובץ package.json סקריפט בשם dev, שיריץ את הפקודה tsc --wach
"scripts": { "dev": "tsc --watch", "test": "echo \"Error: no test specified\" && exit 1" },בתיקית השורש של הפרוייקט, נוסיף את התיקיה
.vscodeובתוכה שני קבצים, launch.json{ "configurations": [ { "name": "Launch Program", "program": "${workspaceFolder}/app.ts", "request": "launch", "skipFiles": [ "<node_internals>/**" ], "type": "node", "preLaunchTask": "npm: dev", } ] }tasks.json
{ // See https://go.microsoft.com/fwlink/?LinkId=733558 // for the documentation about the tasks.json format "version": "2.0.0", "tasks": [ { "type": "npm", "script": "dev", "problemMatcher": "$tsc-watch", "isBackground": true } ] }לא לשכוח להוסיף קובץ בתיקית השורש בשם tsconfig.json,
{ "compilerOptions": { "module": "commonjs", "esModuleInterop": true, "target": "es2021", "moduleResolution": "node", "sourceMap": true, }, "lib": ["es2015"] }כעת בהרצה יווצרו ליד כל קובץ ts שני קבצים, js & js.map , זה מבלבל בעין, אז נוסיף לתיקיה .vscode קןבץ בשם settings.json עם התוכן הבא
{ "files.exclude": { "node_modules/": true, "*.js": true, "*.js.map": true, }, }וכך הקבצים המיותרים יוסתרו
-
במידה ונרצה להוסיף מתודות ומאפיינים ייחודיים לאובייקטים של אקספרס, לדוגמא יוזר עם מספר נעליים, ניצור קובץ דומיין בשם
types.d.tsעם התוכן הבאdeclare namespace Express { export interface Request { user?: { shoeSize: number } } }וכך עורך הקוד ומנוע הקימפול יכירו בו

-
@צדיק-תמים אמר בטיפים לכתיבת שרת נוד ב TS:
@יוסף-בן-שמעון למה לא לכתוב בtsconfig
"outDir": "dist"וכך הקבצים ייווצרו מלכתחילה בתקיה ייעודית?

תלוי בסביבה ובדרישות, לא מתאים בכל מצב, ובכל מקרה, גם את התיקיה הייעודית כדאי להסתיר
שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.
נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.
בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗
הרשמה התחברות