egg.js 中 validate 的最佳实践 - CNode技术社区

egg.js 中 validate 的最佳实践
发布于 7 年前 作者 littledu 5955 次浏览 来自 问答

想把所有规则都放一个文件里,但发现所有已定义的目录都是有相关功能的,总感觉放哪都不合适,最后直接在 app 同级目录下建了个 validate 目录里面创建一个文件来存放,如下:

exports.LOGIN = {
 name: {
 type: 'string',
 require: true,
 allowEmpty: false
 },
 password: {
 type: 'string',
 require: true,
 allowEmpty: false
 }
};
exports.ARTICLES = {
 name: {
 type: 'string',
 require: true,
 allowEmpty: false
 },
 password: {
 type: 'string',
 require: true,
 allowEmpty: false
 }
};

但这样子,这个文件改动并不会被监听,请问大家都是怎么搞的

7 回复

我直接放在对应的 controller 里面了,文件改动的话,应该想办法解决掉 require 的缓存实现热更新吧,我没试过,但是听说过

@mehunk 就是直接在对应的 controller 前面写是吧,暂时我也这样处理,用框架就是不想自己写太多开发过程的东西,所以热更新就不搞了。

@littledu 自动重启只需配置下 egg-development 的配置

@atian25 谢谢,看了下 egg-development 的配置,配了 watchDirs 可以了。

我都是封装 async-validator 来做校验

const data = await ctx.validate( 模型名/校验模型对象, ‘username, -loginIp, -password, email’ )

await ctx.model.User.create(user)

校验错误提示如何优雅的自定义中文或者国际化呢?

回到顶部

AltStyle によって変換されたページ (->オリジナル) /