然后不是一个功能

时间:2016-10-15 13:44:45

标签: javascript node.js promise imagemin

我在node.js项目中运行以下代码。我需要“imagemin”和“imageminGifsicle”。我收到以下错误

  

})。then(files => {      ^   TypeError:imagemin(...)。然后不是函数

我以前没有在我的项目中使用过promises。我是否需要将它们包括在内使用.then?

imagemin(['export/sample/out.gif'], 'export/sample/out2.gif', {
 plugins: [
  imageminGifsicle({optimizationLevel: 1})
 ]
}).then(files => {
  console.log(files);
  console.log("finished");
}).catch(err => {
  console.log("ERR:"+err);
  throw err;
});

2 个答案:

答案 0 :(得分:3)

.then与Promise相关且imagemin added this only on 5.0.0

您使用的是哪个版本?

答案 1 :(得分:0)

嗯,是的 - 您可以选择您喜欢的承诺库,并使用承诺的“then”功能。在这种情况下,您使用的是imagemin:

const imagemin = require('imagemin');
const imageminMozjpeg = require('imagemin-mozjpeg');
const imageminPngquant = require('imagemin-pngquant');

imagemin on GitHub

要使用Promises,您可以阅读有关MDNhere on stackoverflow

的一些规范和信息