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

View File

@ -4,7 +4,7 @@ import * as orm from '@midwayjs/orm';
import { listModule } from '@midwayjs/decorator'; import { listModule } from '@midwayjs/decorator';
import { Application } from 'egg'; import { Application } from 'egg';
import * as moment from 'moment'; import * as moment from 'moment';
import * as cool from '@midwayjs/cool-core'; import * as cool from 'midwayjs-cool-core';
@Configuration({ @Configuration({
imports: [ 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 { User } from '../model/user';
import { Repository } from 'typeorm'; import { Repository } from 'typeorm';
import { InjectEntityModel } from '@midwayjs/orm'; import { InjectEntityModel } from '@midwayjs/orm';
import { BaseController } from '@midwayjs/cool-core'; import { BaseController, Controller } from 'midwayjs-cool-core';
//import {Controller} from './controller';
@Provide() @Provide()
@Controller('/test') @Controller()
export class HomeController extends BaseController{ export class HomeController extends BaseController{
@InjectEntityModel(User) @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 { EntityModel } from '@midwayjs/orm';
import { Column } from 'typeorm'; import { Column } from 'typeorm';