febs-decorator
v1.1.21
Published
Some typescript decorator which use in front-end and back-end
Downloads
31
Maintainers
Readme
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
..