febs-decorator
TypeScript icon, indicating that this package has built-in type declarations

1.1.21 • Public • Published

Some typescript decorators, like spring-validation and so on.

Setup

npm i febs-decorator

set config in tsconfig.json

"experimentalDecorators": true,
"emitDecoratorMetadata": true,

Example

Validation Example:

import {NotNull, Type} from 'febs-decorator';

class BeanDemo {
    @NotNull
    @Type.Boolean
    a: boolean = null
}

let obj = new BeanA();  // will throw a exception.

Service Example:

import {Service} from 'febs-decorator';

@Service()
class BeanDemo {
}

// get service instances.
@Autowired(BeanDemo)
let objArray:any[];

Bean Example:

import {Service, Bean} from 'febs-decorator';

@Service()
class BeanDemo {
  @Bean()
  foo(): Object {
    return {};
  }
}

// get bean instances.
@Autowired('foo')
let obj:Object;

FeignClient Example:

import { RestController, RequestMapping, RequestMethod } from "febs-decorator";

@FeignClient({name:'serviceName'})
export class BaseService {
  @RequestMapping({ path: '/api', method: RequestMethod.GET, feignCastType: BeanDemo })
  async request(): Promise<BeanDemo> {
    // fallback.
    throw new Error('Message Error');
  }
}

// request
let result:BeanDemo = new BaseService().request();

Reference

Validator Decorator

see readme

A set of validator decorators, e.g. @NotNull, @Max, @Min, @Range ..

Rest Decorator

see readme

A set of restful api decorators, e.g. @RestController, @FeignClient, @RequestMapping, @RequestBody, @PathVariable ..

Package Sidebar

Install

npm i febs-decorator

Weekly Downloads

2

Version

1.1.21

License

MIT

Unpacked Size

383 kB

Total Files

105

Last publish

Collaborators

  • brainpoint