几周前,我在我的计算机上全局安装了 NestJS。现在我回到这个话题,开始学习。
所以我用命令创建了新项目:
nest new ./
Run Code Online (Sandbox Code Playgroud)
它生成了所有文件,但是当我尝试使用命令运行该应用程序时:
nest start
Run Code Online (Sandbox Code Playgroud)
我预计该模板项目会启动,但导入路径有错误?这是由于我安装的 Nest 版本还是其他原因造成的?
我的巢版本:
7.5.6
包.json:
"dependencies": {
"@nestjs/common": "^7.6.13",
"@nestjs/core": "^7.6.13",
"@nestjs/platform-express": "^7.6.13",
"reflect-metadata": "^0.1.13",
"rimraf": "^3.0.2",
"rxjs": "^6.6.6"
},
"devDependencies": {
"@nestjs/cli": "^7.5.6",
"@nestjs/schematics": "^7.2.7",
"@nestjs/testing": "^7.6.13",
"@types/express": "^4.17.11",
"@types/jest": "^26.0.20",
"@types/node": "^14.14.31",
"@types/supertest": "^2.0.10",
"@typescript-eslint/eslint-plugin": "^4.15.2",
"@typescript-eslint/parser": "^4.15.2",
"eslint": "^7.20.0",
"eslint-config-prettier": "^8.1.0",
"eslint-plugin-prettier": "^3.3.1",
"jest": "^26.6.3",
"prettier": "^2.2.1",
"supertest": "^6.1.3",
"ts-jest": "^26.5.2",
"ts-loader": "^8.0.17",
"ts-node": "^9.1.1",
"tsconfig-paths": "^3.9.0",
"typescript": "^4.1.5"
},
Run Code Online (Sandbox Code Playgroud) 我有一个使用package.json文件的 TypeScript React 组件(参见屏幕截图),我运行tsc以将其转换为dist文件夹中的es5,但该package.json文件没有被复制。请注意,在屏幕截图中,我手动将其复制到dist文件夹中。
所以我的问题是:有没有办法通过tsc/tsconfig...来做到这一点,而不必添加复制脚本(通过 运行yarn build)。因为我希望在运行时也能更新tsc --watch
此外,我不希望在组件文件夹中将我的 Component.tsx 重命名为 index.tsx。我不想在我的项目中有 200 个 index.tsx 文件并且使用package.json'smain允许我拥有import SomeComponent from './components/SomeComponent'而不是这样做import SomeComponent from './components/SomeComponent/SomeComponent'很好。
这是我的tsconfig文件:
{
"compilerOptions": {
"target": "es5",
"lib": ["dom", "dom.iterable", "esnext"],
"skipLibCheck": true,
"esModuleInterop": true,
"allowSyntheticDefaultImports": true,
"strict": true,
"forceConsistentCasingInFileNames": true,
"module": "commonjs",
"outDir": "dist",
"moduleResolution": "node",
"resolveJsonModule": true,
"experimentalDecorators": true,
"strictPropertyInitialization": false,
"declaration": …Run Code Online (Sandbox Code Playgroud)