Moleculer Decorators
Decorators for moleculer, Tested & accurate as of 0.13
Available options
constructOverride: false
skipHandler: true
These are defined in @Service
Example usage
const moleculer = require('moleculer');
const { Service, Action, Event, Method, BaseSchema } = require('moleculer-decorators');
const web = require('moleculer-web');
const broker = new moleculer.ServiceBroker({
logger: console,
logLevel: "debug",
});
@Service({
mixins: [web],
settings: {
port: 3000,
routes: [
...
]
}
})
class ServiceName extends BaseSchema {
constructor() {
this.settings = {
port: 3001
}
}
settings = {
port: 3001
}
@Action()
Login(ctx) {
...
}
@Action({
skipHandler: true
})
Login3() {
}
@Action({
cache: false,
params: {
a: "number",
b: "number"
}
})
Login2(ctx) {
...
}
@Event({
group: 'group_name'
})
'event.name'(payload, sender, eventName) {
...
}
@Event()
'event.name'(payload, sender, eventName) {
...
}
@Method
authorize(ctx, route, req, res) {
...
}
started() {
...
}
created() {
...
}
stopped() {
...
}
}
broker.createService(ServiceName);
broker.start();
Usage with moleculer-runner
Simply export the service instead of starting a broker manually.
It must be a commonjs module.
module.exports = ServiceName
License
Moleculer Decorators is available under the MIT license.