egg
egg copied to clipboard
基础插件 egg-mysql 的代码是不是该维护了,质量堪忧
What happens?
egg-mysql 的文档样例有点少,就去查了ali-rds ,在读代码时,看到 /lib/operator.js 中的代码质量太堪忧了,瞬间 egg.js 就不香了,各种神仙代码,全读一边不可能,但如果egg的基础库都是这种代码,真是不太想用了。
例子:
在 ali-rds 的 /lib/operator.js 的第 269 行 数组直接与字符相加,并且 255 行的变量 SQL 就没必要声明成数组,运行是能运行,但太仙了
let SQL = [ 'UPDATE ?? SET ' ];
let VALUES = [ table ];
const TEMPLATE = [];
for (const key in SQL_CASE) {
let templateSql = ' ?? = CASE ';
VALUES.push(key);
templateSql += SQL_CASE[key].when.join(' ');
VALUES = VALUES.concat(SQL_CASE[key].then);
templateSql += ' ELSE ?? END ';
TEMPLATE.push(templateSql);
VALUES.push(key);
}
SQL += TEMPLATE.join(' , ');
希望开发组也能维护维护基础库吧
有兴趣的可以去翻下 npx,还有 koa 底层很多 http 的基础库,甚至 Node.js 本身的源码看看,可能你会对 Node 失望 T_T
这些库都很多年头了,改的 KOI 不一定足够优先级。一般来说,有兴趣的参与者可以直接 PR 优化的,欢迎提 PR。
cc @fengmk2 @dead-horse @_@
@wl879 直接改起来?