typescript - Kör NestJS-skript från kommandoraden
Jag vill kunna köra ett skript som analyserar en XML-fil med NestJS-ramverket för ett konceptbevis, men jag är inte säker på hur man gör det.
Jag skapade en scripts-katalog inuti /src och placerade min script.ts med en initial console.log där. Hur kan jag köra kommandon inom den filen? Bör jag ändra script.ts-filen till vanlig JavaScript istället för TypeScript och sedan köra node myscript.ts? Vad är det korrekta tillvägagångssättet för detta?
Svar #1
Jag lyckades köra min ts-fil med npx ts-node my-file.ts
Svar #2
Du kan lägga till en bin-egenskap till din package.json med namnet på kommandot du vill ge, och js-filen som är kopplad till kommandot. Därifrån, om du skulle köra "commandName", bör du få kommandot att köras korrekt (efter att ha byggt från Typescript till JavaScript förstås). Som ett exempel kan du se detta. Den ursprungliga kommandofilen är skriven i Typescript, tilldelad en shebang på #!/usr/bin/env node för att tillåta node att användas som skriptkörning, och sedan kompilera till JavaScript med resten av biblioteket. Därifrån kör jag bara ogma <file_name> och låter skriptet ta hand om resten.
För dig kommer det att vara ett steg att lägga till Nest ovanpå detta, men det är fortfarande ganska lätt att hantera eftersom du kommer att ha ingångsfilen använda NestFactory för att skapa applikationen och sedan skicka den förväntade datan till någon form av handler som beskrivs kort här. Känn dig fri att kommentera om du har några andra frågor.