From 6612dc3bc84f4a396213fda6f81356692084df0b Mon Sep 17 00:00:00 2001 From: gaoshuaixing Date: Mon, 16 Dec 2024 19:37:18 +0800 Subject: [PATCH] chore: job demo --- electron/jobs/example/timer.js | 11 +++++------ electron/service/job/user.js | 28 ++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 6 deletions(-) create mode 100644 electron/service/job/user.js diff --git a/electron/jobs/example/timer.js b/electron/jobs/example/timer.js index 44e8054..a2141b6 100644 --- a/electron/jobs/example/timer.js +++ b/electron/jobs/example/timer.js @@ -1,10 +1,9 @@ const Job = require('ee-core/jobs/baseJobClass'); -const Loader = require('ee-core/loader'); const Log = require('ee-core/log'); const Ps = require('ee-core/ps'); const { childMessage } = require('ee-core/message'); -const Hello = Loader.requireModule('./jobs/example/hello'); -const EffectService = Loader.requireModule('./service/effect'); +const Hello = require('./hello'); +const UserService = require('../../service/job/user'); /** * example - TimerJob @@ -30,9 +29,9 @@ class TimerJob extends Job { // 子进程中使用service // 1. 需要重新实例化,因为子进程中没有ee的上下文 - // 2. service 中不能使用 electron 的 api,electron不支持 - const effectService = new EffectService(); - effectService.hello('job'); + // 2. 确保引入的 service 中不能有electron 的 api或依赖, electron 不支持 + const userService = new UserService(); + userService.hello('job'); // 执行任务 this.doTimer(jobId); diff --git a/electron/service/job/user.js b/electron/service/job/user.js new file mode 100644 index 0000000..e05a414 --- /dev/null +++ b/electron/service/job/user.js @@ -0,0 +1,28 @@ +'use strict'; + +const Log = require('ee-core/log'); + +/** + * job 中使用的 service 不要继承 const { Service } = require('ee-core') + * 因为 Service 中会依赖 electron 的 api 导致错误 + * @class + */ +class UserService { + + /** + * hello + */ + async hello(args) { + let obj = { + status:'ok', + params: args + } + Log.info('UserService obj:', obj); + + return obj; + } + +} + +UserService.toString = () => '[class UserService]'; +module.exports = UserService; \ No newline at end of file