要设计一个接口,大家觉得哪种看上去舒服点?

2020-02-08 11:44:54 +08:00
 newghost

刚注意到代码在 node.js 节点下很丑,大家克服一下

A: 连写型

db.upsert('article', {
    id      : 1
  , title   : 'Hello world'
  , poster  : 'kris'
  , visit   : 100
}).error(function(err) {
   ...
}).done(function(count) {
   ...
})

db.remove('article', { id: 1 })
  .error(function(err) {
      ...
  })
  .done(function() {
      ...
  })


db.find('article', {poster : 'kris'})
  .between('visit', 100, 200)
  .range(100, 200)
  .done(function(err, rows, count) {
    ....
  })

B: 回调型

oncedb.upsert('article', {
    id      : 1
  , title   : 'Hello world'
  , poster  : 'kris'
  , visit   : 100
}, function(err) {
   ... 
})

db.remove('article', { id: 1 }, function(err) {
   ...
})


db.find('article', {poster : 'kris'}, function(err, rows) {
  if (err) {
    console.log(err)
    return
  }

  console.log(rows)

}, { between: ['visit', 100, 200], range: [0, 100] })

看到现在很多库都用 A,node.js 标准 API 基本上是 B,大家喜欢哪一种? 大家觉得流行风格会不会变?

6972 次点击
所在节点    Node.js
10 条回复
lsvih
2020-02-08 11:47:24 +08:00
当然链式调用更香啦
gimp
2020-02-08 11:53:30 +08:00
我喜欢 async / await ...
secondwtq
2020-02-08 12:36:10 +08:00
老实用 Promise 不好么……
HarryYu
2020-02-08 13:39:11 +08:00
promise +1
yafoo
2020-02-08 19:31:41 +08:00
我喜欢 async / await ...
ayase252
2020-02-08 19:32:09 +08:00
async await
yimity
2020-02-08 20:55:59 +08:00
写成 Promise,然后觉得 then 不好用可以 async await。
wanguorui123
2020-02-09 10:16:29 +08:00
用 callback 转 Promise 转 await,最终用 await
WilliamLin
2020-02-09 10:49:13 +08:00
async await
wildnode
2020-02-09 12:42:14 +08:00
这个节点下的代码块样式有点影响体验啊
另外发现这个节点下评论输入框 focus 的时候 背景会变白
不知道是 Bug 还是 Feature
@Livid

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/642936

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX