File 如何修复测试文件上载时tsc监视重新启动?
我想在我的NestJS项目中本地测试文件上传API。我跟着。但是,当我上载文件时,File 如何修复测试文件上载时tsc监视重新启动?,file,nestjs,tsc,File,Nestjs,Tsc,我想在我的NestJS项目中本地测试文件上传API。我跟着。但是,当我上载文件时,tsc watch会重新启动,因为upload文件夹已更改 这里我使用的是NestJSversion6以及从nestcli安装的所有东西。我还使用谷歌云存储来存储文件。我通过运行start:dev本地测试项目 我已尝试在tsconfig.json和tsconfig.build.json中的exclude选项中添加upload文件夹,但它不起作用 我还尝试过使用nodemon。不幸的是,nodemon在我更改代码时不
tsc watch
会重新启动,因为upload
文件夹已更改
这里我使用的是NestJS
version6以及从nestcli
安装的所有东西。我还使用谷歌云存储来存储文件。我通过运行start:dev
本地测试项目
我已尝试在tsconfig.json
和tsconfig.build.json
中的exclude
选项中添加upload
文件夹,但它不起作用
我还尝试过使用nodemon
。不幸的是,nodemon
在我更改代码时不会重新启动
以下是一些代码():
控制器
服务
fileService
package.json
我希望文件会在之后上传和删除,但是tsc watch
会继续重新启动,并且从不上传或删除文件
当
上传
目录发生更改时,是否仍可以从重新启动时停止tsc watch
,或者是否应该使用任何其他工具?您可以在package.json中设置为忽略watch
"watch": {
"ignore": "upload"
}
使用
ts lint
的第一个解决方案是将upload
文件夹移到src
文件夹之外,并忽略该文件夹
另一种解决方案与您建议的相同,将nodemon
与ts node
一起使用,但nodemon
本身存在监视docker
内部文件的问题,并将start命令更改为以下命令
"start": "nodemon -L --watch 'src/**/*.ts' --exec ts-node src/main.ts",
async uploadFile(name: string, file: FileDto) {
await this.bucket.upload(file.path, {
destination: name,
contentType: file.mimetype,
resumable: false,
});
removeSync(file.path);
}
{
...
"scripts": {
...
"start:dev": "tsc-watch -p tsconfig.build.json --onSuccess \"node dist/main.js\"",
...
},
"dependencies": {
"@google-cloud/storage": "^3.3.1",
"@nestjs/common": "^6.0.0",
"@nestjs/core": "^6.0.0",
"@nestjs/mongoose": "^6.1.2",
"@nestjs/platform-express": "^6.0.0",
"class-transformer": "^0.2.3",
"class-validator": "^0.10.1",
"fs-extra": "^8.1.0",
"mongoose": "^5.7.3",
"reflect-metadata": "^0.1.12",
"rimraf": "^2.6.2",
"rxjs": "^6.3.3"
},
"devDependencies": {
"@nestjs/testing": "^6.0.0",
"@types/express": "4.16.1",
"@types/fs-extra": "^8.0.0",
"@types/jest": "24.0.11",
"@types/mongoose": "^5.5.19",
"@types/node": "11.13.4",
"@types/supertest": "2.0.7",
"jest": "24.7.1",
"prettier": "1.17.0",
"supertest": "4.0.2",
"ts-jest": "24.0.2",
"ts-node": "8.1.0",
"tsc-watch": "2.2.1",
"tsconfig-paths": "3.8.0",
"tslint": "5.16.0",
"typescript": "3.4.3"
},
...
}
"watch": {
"ignore": "upload"
}
"start": "nodemon -L --watch 'src/**/*.ts' --exec ts-node src/main.ts",