关于课程 10-5 中 get_search_data 的执行问题

来源:10-5 为网站添加接口之线上HTTP接口调用

T_xbo

2017-03-30

// webAppService.js 文件中 数据查询函数
exports.get_search_data = function(start, end, keyword){
  return function(callback){
    //...
  }
}

返回的函数在何时被调用的,其参数 callback 又是在何时传进去的,传进去的是什么样的回调呢?

// 在 app.js 文件中是这样在 Generator 被调用的
app.use(controller.get('/ajax/search', function*() {
  // 省略的代码
  this.body = yield service.get_search_data(start, end, keyword)
}))

app.js 文件中是这样在 Generator 被调用的,并没有第二个括号。。。有谁能解释一下?是不是利用了 thunk 函数的原因?具体如何走的不太理解。

写回答

1回答

T_xbo

提问者

2017-03-30

补充一下,发现返回的函数中的参数是一个 promise。

function (err, res) {
  if (err) return reject(err);
  if (arguments.length > 2) res = slice.call(arguments, 1);
  resolve(res);
}


0
0

HTML5独立开发书城Web App

最前沿前端技术精讲, HTML5 、Vue.js 、Koa 、zepto 综合运用

3387 学习 · 685 问题

查看课程