通过 NestJS 中的声明式任务调度,上下文会保留在计划任务中,因此下面的代码可以正常工作。
@Injectable()
export class SchedulerService {
private readonly log: Logger;
constructor(
@Inject(WINSTON_MODULE_PROVIDER) logger: Logger,
private schedulerRegistry: SchedulerRegistry
) {
this.log = logger.child({ context: 'scheduler service' });
}
@Cron('*/5 * * * * *')
myScheduledTask(): void {
this.log.info('test');
}
Run Code Online (Sandbox Code Playgroud)
然而,动态调度同一个任务时,this.log是undefined在scheduled函数中。这怎么可能 ?
@Injectable()
export class SchedulerService {
private readonly log: Logger;
constructor(
@Inject(WINSTON_MODULE_PROVIDER) logger: Logger,
private schedulerRegistry: SchedulerRegistry
) {
this.log = logger.child({ context: 'scheduler service' });
const userSyncJob = new CronJob('*/5 * * * * …Run Code Online (Sandbox Code Playgroud) 我正在使用打字稿在 vue 3 中开发一个新应用程序。我在 Chrome 中安装了 Vue Devtools,但它拒绝将该应用程序识别为 Vue 应用程序声明Vue.js not detected. 我在互联网上找到的帮助是添加Vue.config.devtools = true;到 main.js。但是Vue在 main.ts 中不可用我还找到了调整 webpack 配置的说明,但是项目中没有 webpack(由vue-cli.