From 76e868dedc0b31ee8c66cddc18e1cda05752f044 Mon Sep 17 00:00:00 2001 From: ap <951984189@qq.com> Date: Mon, 26 Apr 2021 11:03:33 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E6=A8=A1=E5=9D=97=E4=B8=AD?= =?UTF-8?q?=E9=97=B4=E4=BB=B6=E5=8F=AA=E9=92=88=E5=AF=B9=E6=9C=AC=E6=A8=A1?= =?UTF-8?q?=E5=9D=97=E6=9C=89=E6=95=88=EF=BC=8C=E4=B8=8D=E5=86=8D=E6=98=AF?= =?UTF-8?q?=E5=85=A8=E5=B1=80=EF=BC=8C=E6=A0=B9=E6=8D=AEeslint=E6=95=B4?= =?UTF-8?q?=E7=90=86=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 4 +-- public/js/welcome.js | 2 ++ src/app/modules/base/entity/sys/menu.ts | 1 - src/app/modules/base/middleware/authority.ts | 2 +- src/app/modules/demo/config.ts | 2 +- src/app/modules/demo/controller/app/goods.ts | 30 +++++++++++++------- src/app/modules/demo/middleware/test.ts | 20 +++++++++++++ src/app/modules/space/config.ts | 2 +- src/app/modules/task/config.ts | 2 +- src/config/config.local.ts | 2 +- src/configuration.ts | 4 +-- 11 files changed, 50 insertions(+), 21 deletions(-) create mode 100644 src/app/modules/demo/middleware/test.ts diff --git a/package.json b/package.json index 798d778..664dcf7 100755 --- a/package.json +++ b/package.json @@ -15,7 +15,7 @@ "lodash": "^4.17.21", "md5": "^2.3.0", "midwayjs-cool-alipay": "^1.0.3", - "midwayjs-cool-core": "^3.1.9", + "midwayjs-cool-core": "^3.2.0", "midwayjs-cool-oss": "^1.0.12", "midwayjs-cool-queue": "^1.0.7", "midwayjs-cool-redis": "^1.1.6", @@ -44,7 +44,7 @@ "node": ">=12.0.0" }, "scripts": { - "start": "egg-scripts start --daemon --title=cool-admin-midway --framework=@midwayjs/web --port=8001 --sticky", + "start": "egg-scripts start --title=cool-admin-midway --framework=@midwayjs/web --port=8001 --sticky", "stop": "egg-scripts stop --title=cool-admin-midway", "start_build": "npm run build && cross-env NODE_ENV=development midway-bin dev", "docker": "egg-scripts start --title=cool-admin-midway --framework=@midwayjs/web --sticky", diff --git a/public/js/welcome.js b/public/js/welcome.js index f185f65..05054e8 100644 --- a/public/js/welcome.js +++ b/public/js/welcome.js @@ -1,10 +1,12 @@ const duration = 0.8; const delay = 0.3; +// eslint-disable-next-line no-undef const revealText = document.querySelector('.reveal'); const letters = revealText.textContent.split(''); revealText.textContent = ''; const middle = letters.filter(e => e !== ' ').length / 2; letters.forEach((letter, i) => { + // eslint-disable-next-line no-undef const span = document.createElement('span'); span.textContent = letter; span.style.animationDelay = `${delay + Math.abs(i - middle) * 0.1}s`; diff --git a/src/app/modules/base/entity/sys/menu.ts b/src/app/modules/base/entity/sys/menu.ts index 0712501..1549aae 100644 --- a/src/app/modules/base/entity/sys/menu.ts +++ b/src/app/modules/base/entity/sys/menu.ts @@ -43,5 +43,4 @@ export class BaseSysMenuEntity extends BaseEntity { @Column({ comment: '父菜单名称', default: true }) isShow: boolean; - } diff --git a/src/app/modules/base/middleware/authority.ts b/src/app/modules/base/middleware/authority.ts index 88d6fd0..2e7b95e 100644 --- a/src/app/modules/base/middleware/authority.ts +++ b/src/app/modules/base/middleware/authority.ts @@ -34,7 +34,7 @@ export class BaseAuthorityMiddleware implements IWebMiddleware { if (_.startsWith(url, adminUrl)) { try { ctx.admin = jwt.verify(token, this.coolConfig.jwt.secret); - } catch (err) { } + } catch (err) {} // 不需要登录 无需权限校验 if (new RegExp(`^${adminUrl}?.*/open/`).test(url)) { await next(); diff --git a/src/app/modules/demo/config.ts b/src/app/modules/demo/config.ts index 336aa62..11856f2 100644 --- a/src/app/modules/demo/config.ts +++ b/src/app/modules/demo/config.ts @@ -11,6 +11,6 @@ export default (app: Application) => { // 模块描述 description: '演示示例', // 中间件 - middlewares: [], + middlewares: ['testMiddleware'], } as ModuleConfig; }; diff --git a/src/app/modules/demo/controller/app/goods.ts b/src/app/modules/demo/controller/app/goods.ts index 3014f27..542eee1 100644 --- a/src/app/modules/demo/controller/app/goods.ts +++ b/src/app/modules/demo/controller/app/goods.ts @@ -8,13 +8,18 @@ import { DemoGoodsService } from '../../service/goods'; * 商品 */ @Provide() -@CoolController({ - api: ['add', 'delete', 'update', 'info', 'list', 'page'], - entity: DemoAppGoodsEntity, - listQueryOp: { - keyWordLikeFields: ['title'], +@CoolController( + { + api: ['add', 'delete', 'update', 'info', 'list', 'page'], + entity: DemoAppGoodsEntity, + listQueryOp: { + keyWordLikeFields: ['title'], + }, }, -}) + { + middleware: [], + } +) export class DemoAppGoodsController extends BaseController { @Inject() demoGoodsService: DemoGoodsService; @@ -36,10 +41,13 @@ export class DemoAppGoodsController extends BaseController { * 发送数据到队列 */ @Post('/queue') - async queue(){ - this.demoQueue.queue.add({a: 1}, { - removeOnComplete: true, - removeOnFail: true, - }); + async queue() { + this.demoQueue.queue.add( + { a: 1 }, + { + removeOnComplete: true, + removeOnFail: true, + } + ); } } diff --git a/src/app/modules/demo/middleware/test.ts b/src/app/modules/demo/middleware/test.ts new file mode 100644 index 0000000..bd4c3b1 --- /dev/null +++ b/src/app/modules/demo/middleware/test.ts @@ -0,0 +1,20 @@ +import { Provide } from '@midwayjs/decorator'; +import { IWebMiddleware, IMidwayWebNext } from '@midwayjs/web'; +import { Context } from 'egg'; + +/** + * 描述 + */ +@Provide() +export class TestMiddleware implements IWebMiddleware { + resolve() { + return async (ctx: Context, next: IMidwayWebNext) => { + // 控制器前执行的逻辑 + const startTime = Date.now(); + // 执行下一个 Web 中间件,最后执行到控制器 + await next(); + // 控制器之后执行的逻辑 + console.log(Date.now() - startTime); + }; + } +} diff --git a/src/app/modules/space/config.ts b/src/app/modules/space/config.ts index 9b24b94..140d7f8 100644 --- a/src/app/modules/space/config.ts +++ b/src/app/modules/space/config.ts @@ -11,6 +11,6 @@ export default (app: Application) => { // 模块描述 description: '上传和管理文件资源', // 中间件 - middlewares: [], + middlewares: ['baseAuthorityMiddleware', 'baseLogMiddleware'], } as ModuleConfig; }; diff --git a/src/app/modules/task/config.ts b/src/app/modules/task/config.ts index ef68592..dbd8a88 100644 --- a/src/app/modules/task/config.ts +++ b/src/app/modules/task/config.ts @@ -11,6 +11,6 @@ export default (app: Application) => { // 模块描述 description: '任务调度模块,支持分布式任务,由redis整个集群的任务', // 中间件 - middlewares: [], + middlewares: ['baseAuthorityMiddleware', 'baseLogMiddleware'], } as ModuleConfig; }; diff --git a/src/config/config.local.ts b/src/config/config.local.ts index 83923f5..c37f1ee 100644 --- a/src/config/config.local.ts +++ b/src/config/config.local.ts @@ -9,7 +9,7 @@ export default (appInfo: EggAppInfo) => { type: 'mysql', host: '127.0.0.1', port: 3306, - username: 'cool', + username: 'root', password: '123123', database: 'cool', // 自动建表 注意:线上部署的时候不要使用,有可能导致数据丢失 diff --git a/src/configuration.ts b/src/configuration.ts index 7e49cd2..c10f83f 100644 --- a/src/configuration.ts +++ b/src/configuration.ts @@ -35,7 +35,7 @@ export class ContainerLifeCycle implements ILifeCycle { @App() app: Application; // 应用启动完成 - async onReady(container?: IMidwayContainer) { } + async onReady(container?: IMidwayContainer) {} // 应用停止 - async onStop() { } + async onStop() {} }