דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. מדריכים
  4. טיפים לכתיבת שרת נוד ב TS

טיפים לכתיבת שרת נוד ב TS

מתוזמן נעוץ נעול הועבר מדריכים
4 פוסטים 2 כותבים 796 צפיות 2 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • י
    י
    יוסף בן שמעון
    כתב ב נערך לאחרונה על ידי יוסף בן שמעון
    #1

    סביבת פיתוח:
    להתקין

    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,
        },
    }
    

    וכך הקבצים המיותרים יוסתרו

    צדיק תמיםצ תגובה 1 תגובה אחרונה
    2
    • י יוסף בן שמעון

      סביבת פיתוח:
      להתקין

      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,
          },
      }
      

      וכך הקבצים המיותרים יוסתרו

      צדיק תמיםצ
      צדיק תמיםצ
      צדיק תמים
      כתב ב נערך לאחרונה על ידי
      #2

      @יוסף-בן-שמעון למה לא לכתוב בtsconfig

              "outDir": "dist"
      

      וכך הקבצים ייווצרו מלכתחילה בתקיה ייעודית? 🤔

      Don’t comment bad code — rewrite it." — Brian W. Kernighan and P. J. Plaugher"
      טיפים

      י תגובה 1 תגובה אחרונה
      0
      • י
        י
        יוסף בן שמעון
        כתב ב נערך לאחרונה על ידי
        #3

        במידה ונרצה להוסיף מתודות ומאפיינים ייחודיים לאובייקטים של אקספרס, לדוגמא יוזר עם מספר נעליים, ניצור קובץ דומיין בשם types.d.ts עם התוכן הבא

        declare namespace Express {
            export interface Request {
                user?: {
                    shoeSize: number
                }
            }
        }
        

        וכך עורך הקוד ומנוע הקימפול יכירו בו
        263ed6ce-f7d8-4be3-b852-8f8320b91f37-image.png

        תגובה 1 תגובה אחרונה
        2
        • צדיק תמיםצ צדיק תמים

          @יוסף-בן-שמעון למה לא לכתוב בtsconfig

                  "outDir": "dist"
          

          וכך הקבצים ייווצרו מלכתחילה בתקיה ייעודית? 🤔

          י
          י
          יוסף בן שמעון
          כתב ב נערך לאחרונה על ידי יוסף בן שמעון
          #4

          @צדיק-תמים אמר בטיפים לכתיבת שרת נוד ב TS:

          @יוסף-בן-שמעון למה לא לכתוב בtsconfig

                  "outDir": "dist"
          

          וכך הקבצים ייווצרו מלכתחילה בתקיה ייעודית? 🤔

          תלוי בסביבה ובדרישות, לא מתאים בכל מצב, ובכל מקרה, גם את התיקיה הייעודית כדאי להסתיר

          תגובה 1 תגובה אחרונה
          1

          שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.

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

          בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗

          הרשמה התחברות
          תגובה
          • תגובה כנושא
          התחברו כדי לפרסם תגובה
          • מהישן לחדש
          • מהחדש לישן
          • הכי הרבה הצבעות


          בא תתחבר לדף היומי!
          • התחברות

          • אין לך חשבון עדיין? הרשמה

          • התחברו או הירשמו כדי לחפש.
          • פוסט ראשון
            פוסט אחרון
          0
          • דף הבית
          • קטגוריות
          • פוסטים אחרונים
          • משתמשים
          • חיפוש
          • חוקי הפורום