Comments (4)
@alexjoverm fe:
from: instance-loader.ts
private callModuleInitHook(module: Module) {
const components = [...module.routes, ...module.components];
components.map(([key, {instance}]) => instance)
.filter((instance) => !isNil(instance))
.filter(this.hasOnModuleInitHook)
.forEach((instance) => (instance as OnModuleInit).onModuleInit());
}
Depends on how many components are, this chain will be executed 4 times for N items.
So when we will use iterare:
private callModuleInitHook(module: Module) {
const components = [...module.routes, ...module.components];
iterate(components).map(([key, {instance}]) => instance)
.filter((instance) => !isNil(instance))
.filter(this.hasOnModuleInitHook)
.forEach((instance) => (instance as OnModuleInit).onModuleInit());
}
Will only loop just once for N items. Slightly performance improvements. Bechmarks http://iterare.surge.sh/#performance shows the impact.
Regards.
from nest.
Hi @cojack,
Since 2.0.0 iterate library is used. Thanks for your proposal :)
from nest.
I don't understand this issue. Cannot one itself use iterate on its code? Is this issue meaning to use iterate in the core code of nest?
from nest.
This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
from nest.
Related Issues (20)
- The use of SetMetadata custom decorators does not take effect HOT 13
- NestJS HttpException class returns success status when status is undefined HOT 4
- NestJs DI `useFactory` ignores property dependencies HOT 1
- I can't use two kafka client in one nest.js server to consume other topics. HOT 1
- Support using `@Inject()` decorator factory with no args on constructor-based injections
- Add CLI options to make the testing, linting, and formatting configurations optional. HOT 1
- @nestjs/microservices: RabbitMQ connection options not passed to amqp-connection-manager HOT 2
- 我有一个问题,关于依赖注入和模块导入的 HOT 1
- [chore] drop dev. dependencies that are leading to errors on running `npm install` in this repo HOT 6
- Support for Multiple HTTP Methods on the function HOT 3
- Cannot read properties of undefined (reading 'constructor') HOT 3
- Nest can't resolve dependencies of the DiscoveryService (?). Please make sure that the argument ModulesContainer at index [0] HOT 11
- I have a question about dependency injection and module import HOT 1
- Supply time to TypeOrmLogger.logQuery() HOT 1
- TCP.onStreamRead (node:internal/stream_base_commons:217:20) HOT 1
- RabbitMQ Bug Microservices HOT 1
- nx 18 + nest + webpack + serverless breaking with error src/main.handler is undefined or not exported HOT 1
- NestJS doesn't handle "Operation failed: QueueDeclare" error from amqplib HOT 1
- Problems Encountered with NestJS and pnpm in a Monorepo Setup HOT 1
- grpc microservice stops listening to requests after version 10.3.3 (needs peer dependency) HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nest.