我们会学习到服务端,也就是创建nest g services xxx
和
nest g controller xxx 之间的引用
举个简单的例子,比如说,我们的服务端,会是这样的
import { Injectable } from '@nestjs/common';
@Injectable()
export class TackService {
findAll() {
return [
{ title: 'zhangsan' },
{ title: 'zhangsan' },
{ title: 'zhangsan' },
];
}
}
如果我们后期想用
看看模块中
import { Module } from '@nestjs/common';
import { AppController } from './app.controller';
import { AppService } from './app.service';
import { UserController } from './user/user.controller';
import { TackService } from './tack/tack.service';
@Module({
imports: [],
controllers: [AppController, UserController],
providers: [AppService, TackService],
})
export class AppModule {}
import { Controller, Get } from '@nestjs/common';
import { TackService } from '../tack/tack.service';
@Controller('user')
export class UserController {
constructor(private newService: TackService) {}
@Get('/lisy')
index() {
console.log(this.newService.findAll());
return this.newService.findAll();
}
}
也就是这个样子,这样跑起来是没啥问题的,但是我换个方法,就会出问题
import { Controller, Get, Render } from '@nestjs/common';
import { TackService } from '../tack/tack.service';
@Controller('user')
export class UserController {
constructor(private newService: TackService) {}
@Get()
@Render(‘/nesbook/books’)
index() {
console.log(this.newService.findAll());
return this.newService.findAll();
}
}
这个和上面是不一样的,就会报一个错
[ { title: 'zhangsan' }, { title: 'zhangsan' }, { title: 'zhangsan' } ]
[Nest] 2688 - 2022/12/17 11:04:30 ERROR [ExceptionsHandler] No default engine was specified and no extension was provided.
Error: No default engine was specified and no extension was provided.
at new View (C:\Users\xiaoyu\demo16\node_modules\express\lib\view.js:61:11)
at Function.render (C:\Users\xiaoyu\demo16\node_modules\express\lib\application.js:587:12)
at ServerResponse.render (C:\Users\xiaoyu\demo16\node_modules\express\lib\response.js:1039:7)
at ExpressAdapter.render (C:\Users\xiaoyu\demo16\node_modules\@nestjs\platform-express\adapters\express-adapter.js:60:25)
at RouterResponseController.render (C:\Users\xiaoyu\demo16\node_modules\@nestjs\core\router\router-response-controller.js:29:36)
at processTicksAndRejections (internal/process/task_queues.js:95:5)
at C:\Users\xiaoyu\demo16\node_modules\@nestjs\core\router\router-execution-context.js:158:24
at C:\Users\xiaoyu\demo16\node_modules\@nestjs\core\router\router-execution-context.js:47:13
at C:\Users\xiaoyu\demo16\node_modules\@nestjs\core\router\router-proxy.js:9:17
访问时,报错Error: No default engine was specified and no extension was provided. 没有设置模板引擎
意思就是这个意思