# service 服务
# 创建 service
使用 decoration 方式创建
import { app, model, service } from "kidi";
let userModel = model.create("userModel", {
id: {
type: Number,
primary: true,
generated: true,
},
name: {
type: String,
}, //资源配置
});
// inject model
@service("user", "userModel")
class UserService {
constructor(userModel) {
this.model = userModel;
}
add(user) {
return this.model.add(user);
}
find(data) {
return this.model.find({ where: data });
}
}
// inject service
@service("user2", "user")
class UserService2 {
constructor(user) {
this.service = user;
}
find2(data) {
return this.service.find(data);
}
}
非 decoration 方式创建
import { app, model, service } from "kidi";
let userModel = model.create("userModel", {
id: {
type: Number,
primary: true,
generated: true,
},
name: {
type: String,
}, //资源配置
});
class UserService {
constructor(userModel) {
this.model = userModel;
}
add(user) {
return this.model.add(user);
}
find(data) {
return this.model.find({ where: data });
}
}
service.create("user", UserService, "userModel")
class UserService2 {
constructor(user) {
this.service = user;
}
find2(data) {
return this.service.find(data);
}
}
service.create("user2", UserService2, "user")
# 依赖注入
创建服务时,可以注入 model 或其他服务,注入的实例会作为参数传入到服务的构造函数之中