This commit is contained in:
啊平 2021-02-03 18:37:49 +08:00
parent 5adf508361
commit d70f2bae19
5 changed files with 47 additions and 8 deletions

View File

@ -6,22 +6,23 @@
"dependencies": {
"@midwayjs/decorator": "^2.7.0",
"@midwayjs/orm": "^1.3.0",
"@midwayjs/web": "^2.7.0",
"@midwayjs/web": "^2.7.3",
"axios": "^0.21.1",
"egg": "^2.29.1",
"egg-scripts": "^2.13.0",
"midwayjs-cool-core": "file:/Users/ap/Documents/srcs/cool-admin/midway-core/core/dist",
"mysql": "^2.18.1"
},
"devDependencies": {
"@midwayjs/cli": "^1.2.39",
"@midwayjs/egg-ts-helper": "^1.0.5",
"@midwayjs/mock": "^2.7.0",
"@midwayjs/mock": "^2.7.2",
"@types/jest": "^26.0.20",
"@types/node": "14",
"cross-env": "^7.0.3",
"jest": "^26.6.3",
"mwts": "^1.1.2",
"ts-jest": "^26.4.4",
"ts-jest": "^26.5.0",
"typescript": "^4.1.3"
},
"engines": {

View File

@ -4,7 +4,7 @@ import * as orm from '@midwayjs/orm';
import { listModule } from '@midwayjs/decorator';
import { Application } from 'egg';
import * as moment from 'moment';
import * as cool from '@midwayjs/cool-core';
import * as cool from 'midwayjs-cool-core';
@Configuration({
imports: [

View File

@ -0,0 +1,36 @@
import { Scope, ScopeEnum, saveClassMetadata, saveModule, CONTROLLER_KEY, MiddlewareParamArray } from '@midwayjs/decorator';
export interface ControllerOption {
prefix: string;
routerOptions: {
sensitive?: boolean;
middleware?: MiddlewareParamArray;
alias?: string[];
description?: string;
tagName?: string;
};
}
export function Controller(
prefix: string,
routerOptions: {
sensitive?: boolean;
middleware?: MiddlewareParamArray;
description?: string;
tagName?: string;
} = { middleware: [], sensitive: true }
): ClassDecorator {
return (target: any) => {
saveModule(CONTROLLER_KEY, target);
console.log(66666666, 'CONTROLLER_KEY', CONTROLLER_KEY)
saveClassMetadata(
CONTROLLER_KEY,
{
prefix,
routerOptions,
} as ControllerOption,
target
);
Scope(ScopeEnum.Request)(target);
};
}

View File

@ -1,11 +1,13 @@
import { Controller, Get, Query, Provide } from '@midwayjs/decorator';
import { Get, Query, Provide } from '@midwayjs/decorator';
import { User } from '../model/user';
import { Repository } from 'typeorm';
import { InjectEntityModel } from '@midwayjs/orm';
import { BaseController } from '@midwayjs/cool-core';
import { BaseController, Controller } from 'midwayjs-cool-core';
//import {Controller} from './controller';
@Provide()
@Controller('/test')
@Controller()
export class HomeController extends BaseController{
@InjectEntityModel(User)

View File

@ -1,4 +1,4 @@
import { BaseModel } from '@midwayjs/cool-core';
import { BaseModel } from 'midwayjs-cool-core';
import { EntityModel } from '@midwayjs/orm';
import { Column } from 'typeorm';