小编kan*_*ney的帖子

如何在回调接受多个参数时实现函数的promisify

有没有办法在函数中使用多于两个参数的函数?一个例子是node的fs.read,其中回调的三个参数是err,bytes和data.data参数不会传递给then函数,因此这会记录undefined:

var fs = require('fs');
var Promise = require('bluebird');
var open = Promise.promisify(fs.open);
var read = Promise.promisify(fs.read);

open('test.txt', 'r')
  .then(function(fd) {
    var buffer = new Buffer(1024);
    read(fd, buffer, 0, buffer.length, null).then(function(bytes, data) {
      console.log(data);
    });
  });
Run Code Online (Sandbox Code Playgroud)

javascript promise bluebird

5
推荐指数
1
解决办法
2188
查看次数

标签 统计

bluebird ×1

javascript ×1

promise ×1