Skip to content

Commit cc1aae0

Browse files
docs(@nestjs) update examples
1 parent c855c5a commit cc1aae0

18 files changed

Lines changed: 260 additions & 8 deletions

File tree

examples/04-injector/package.json

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,17 +14,13 @@
1414
"@nestjs/microservices": "^4.0.1",
1515
"@nestjs/testing": "^4.0.1",
1616
"@nestjs/websockets": "^4.0.1",
17-
"amqplib": "^0.5.1",
1817
"body-parser": "^1.17.2",
19-
"class-transformer": "^0.1.7",
20-
"class-validator": "^0.7.2",
2118
"redis": "^2.7.1",
2219
"reflect-metadata": "^0.1.10",
2320
"rxjs": "^5.4.3",
2421
"typescript": "^2.4.2"
2522
},
2623
"devDependencies": {
27-
"@types/amqplib": "^0.5.4",
2824
"@types/node": "^7.0.41",
2925
"ts-node": "^3.3.0"
3026
}

examples/05-sql-typeorm/package.json

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,7 @@
1414
"@nestjs/microservices": "^4.0.1",
1515
"@nestjs/testing": "^4.0.1",
1616
"@nestjs/websockets": "^4.0.1",
17-
"amqplib": "^0.5.1",
1817
"body-parser": "^1.17.2",
19-
"class-transformer": "^0.1.7",
20-
"class-validator": "^0.7.2",
2118
"mysql": "^2.14.1",
2219
"redis": "^2.7.1",
2320
"reflect-metadata": "^0.1.10",
@@ -26,7 +23,6 @@
2623
"typescript": "^2.4.2"
2724
},
2825
"devDependencies": {
29-
"@types/amqplib": "^0.5.4",
3026
"@types/node": "^7.0.41",
3127
"ts-node": "^3.3.0"
3228
}

examples/06-mongoose/.gitignore

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# dependencies
2+
/node_modules
3+
4+
# IDE
5+
/.idea
6+
/.awcache
7+
/.vscode
8+
9+
# misc
10+
npm-debug.log
11+
12+
# example
13+
/quick-start
14+
15+
# tests
16+
/test
17+
/coverage
18+
/.nyc_output
19+
20+
# dist
21+
/dist

examples/06-mongoose/index.js

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
require('ts-node/register');
2+
require('./src/server');
3+
4+
5+
6+
7+
8+
9+
10+
11+
12+
13+
14+

examples/06-mongoose/package.json

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
{
2+
"name": "nest-typescript-starter",
3+
"version": "1.0.0",
4+
"description": "Nest TypeScript starter repository",
5+
"license": "MIT",
6+
"scripts": {
7+
"start": "node index.js",
8+
"prestart:prod": "tsc",
9+
"start:prod": "node dist/server.js"
10+
},
11+
"dependencies": {
12+
"@nestjs/common": "^4.0.1",
13+
"@nestjs/core": "^4.0.1",
14+
"@nestjs/microservices": "^4.0.1",
15+
"@nestjs/testing": "^4.0.1",
16+
"@nestjs/websockets": "^4.0.1",
17+
"@types/mongoose": "^4.7.23",
18+
"body-parser": "^1.17.2",
19+
"mongoose": "^4.11.13",
20+
"redis": "^2.7.1",
21+
"reflect-metadata": "^0.1.10",
22+
"rxjs": "^5.4.3",
23+
"typescript": "^2.4.2"
24+
},
25+
"devDependencies": {
26+
"@types/node": "^7.0.41",
27+
"ts-node": "^3.3.0"
28+
}
29+
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import { Module } from '@nestjs/common';
2+
import { CatsModule } from './cats/cats.module';
3+
4+
@Module({
5+
modules: [CatsModule],
6+
})
7+
export class ApplicationModule {}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
import { Controller, Get, Post, Body, Param } from '@nestjs/common';
2+
import { CreateCatDto } from './dto/create-cat.dto';
3+
import { CatsService } from './cats.service';
4+
import { Cat } from './interfaces/cat.interface';
5+
6+
@Controller('cats')
7+
export class CatsController {
8+
constructor(private readonly catsService: CatsService) {}
9+
10+
@Post()
11+
async create(@Body() createCatDto: CreateCatDto) {
12+
this.catsService.create(createCatDto);
13+
}
14+
15+
@Get()
16+
async findAll(): Promise<Cat[]> {
17+
return this.catsService.findAll();
18+
}
19+
}
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import { Module } from '@nestjs/common';
2+
import { CatsController } from './cats.controller';
3+
import { CatsService } from './cats.service';
4+
import { catsProviders } from './cats.providers';
5+
import { DatabaseModule } from '../database/database.module';
6+
7+
@Module({
8+
modules: [DatabaseModule],
9+
controllers: [CatsController],
10+
components: [
11+
CatsService,
12+
...catsProviders,
13+
],
14+
})
15+
export class CatsModule {}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import { Connection } from 'mongoose';
2+
import { CatSchema } from './schemas/cat.schema';
3+
4+
export const catsProviders = [
5+
{
6+
provide: 'CatModelToken',
7+
useFactory: (connection: Connection) => connection.model('Cat', CatSchema),
8+
inject: ['DbConnectionToken'],
9+
},
10+
];
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import { Model } from 'mongoose';
2+
import { Component, Inject } from '@nestjs/common';
3+
import { Cat } from './interfaces/cat.interface';
4+
import { CatsModule } from './cats.module';
5+
import { CreateCatDto } from './dto/create-cat.dto';
6+
7+
@Component()
8+
export class CatsService {
9+
constructor(
10+
@Inject('CatModelToken') private readonly catModel: Model<Cat>) {}
11+
12+
async create(createCatDto: CreateCatDto): Promise<Cat> {
13+
const cat = new this.catModel(createCatDto);
14+
return await cat.save();
15+
}
16+
17+
async findAll(): Promise<Cat[]> {
18+
return await this.catModel.find().exec();
19+
}
20+
}

0 commit comments

Comments
 (0)