Die moderne JavaScript-Entwicklung profitiert oft von der Verwendung von Node.js mit TypeScript und nutzt dessen Typsicherheit und verbesserte Tools für die Skalierbarkeit. Dies wird durch die Integration eines robusten Bundlers, eines Test-Frameworks und eines automatischen Neuladens noch verstärkt. Dieser Artikel führt Sie durch die Einrichtung eines Node.js-Projekts mit TypeScript, Rollup, Jest und Nodemon für ein optimiertes Entwicklungserlebnis.
Das Konfigurieren eines Node.js-Projekts mit TypeScript kann komplex sein und mehrere Tools und Konfigurationen erfordern. Dies führt oft zu einem umständlichen Arbeitsablauf. Dieser Artikel stellt einen vereinfachten Ansatz unter Verwendung der neuesten Tools vor, der sich mit häufigen Einrichtungsherausforderungen befasst:
.js
Erweiterungen in Importanweisungen überflüssig.Diese Konfiguration rationalisiert den Entwicklungsprozess und macht ihn effizienter und wartbarer.
Bevor Sie beginnen, stellen Sie sicher, dass Sie Folgendes haben:
Lassen Sie uns ein einfaches Node.js-Projekt mit TypeScript erstellen:
Projektverzeichnis: Erstellen Sie ein neues Projektverzeichnis und navigieren Sie dorthin:
<code class="language-bash">mkdir my-ts-app cd my-ts-app</code>
Paketinitialisierung:Eine package.json
Datei initialisieren:
<code class="language-bash">npm init -y</code>
Abhängigkeitsinstallation: Installieren Sie die erforderlichen Abhängigkeiten:
<code class="language-bash">npm install --save-dev typescript ts-node @types/node tslib ts-jest rollup rollup-plugin-esbuild nodemon jest @rollup/plugin-node-resolve @rollup/plugin-commonjs</code>
TypeScript-Konfiguration (tsconfig.json
): TypeScript für die Node.js-Umgebung konfigurieren:
<code class="language-json">{ "compilerOptions": { "target": "ESNext", "module": "ESNext", "outDir": "./dist", "strict": true, "esModuleInterop": true, "moduleResolution": "node", "skipLibCheck": true, "resolveJsonModule": true, "declaration": true, "sourceMap": true }, "include": ["src/**/*"], "exclude": ["node_modules", "dist", "tests"] }</code>
Rollup-Konfiguration (rollup.config.js
): Rollup für Produktions-Builds konfigurieren:
<code class="language-javascript">import resolve from '@rollup/plugin-node-resolve'; import commonjs from '@rollup/plugin-commonjs'; import esbuild from 'rollup-plugin-esbuild'; export default { input: './src/index.ts', output: { dir: 'dist', format: 'esm', sourcemap: true, banner: '#!/usr/bin/env node' }, plugins: [ resolve(), commonjs(), esbuild({ target: 'esnext', sourceMap: true, minify: true }) ] };</code>
Jest-Konfiguration (jest.config.js
): Jest zum Testen konfigurieren:
<code class="language-javascript">/** @type {import('ts-jest').JestConfigWithTsJest} **/ export default { testEnvironment: "node", transform: { "^.+.tsx?$": ["ts-jest",{}] } };</code>
Nodemon-Konfiguration (nodemon.json
): Nodemon für automatisches Neuladen konfigurieren:
<code class="language-json">{ "watch": ["src"], "ext": "ts,json", "ignore": ["src/**/*.spec.ts"], "exec": "npm start" }</code>
Quelldateien erstellen: Erstellen Sie src/index.ts
und src/functions/addition.ts
(Beispieldateien in der ursprünglichen Eingabeaufforderung).
Testdateien erstellen: Testdateien erstellen (z. B. tests/functions/addition.spec.ts
).
Projektstruktur:Ihr Projekt sollte eine Struktur haben, die der in der ursprünglichen Aufforderung beschriebenen ähnelt.
npm run build
npm start
npm run dev
npm test
Dieses Setup bietet eine optimierte und effiziente Umgebung für die Entwicklung von Node.js-Anwendungen mit TypeScript. Denken Sie daran, die Konfigurationen an Ihre spezifischen Projektanforderungen anzupassen. Dies ist eine Grundlage für die Erstellung robuster und skalierbarer Anwendungen.
Das obige ist der detaillierte Inhalt vonEin komplettes Node.js TypeScript -Setup mit Rollup, Scherz und Nodemon. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!