图像上传,调整大小并存储Vue JS Firebase

时间:2019-07-04 06:27:18

标签: javascript vue.js vuejs2

我正在为我的SPA应用程序使用Vue js和firebase。我想上传图片,将其调整为固定尺寸,然后上传到Firebase。

我正在使用 Jimp npm软件包来调整上传图像的大小。

下面是我的代码:

Main.js

import Jimp from 'jimp';
Window.Jimp = Jimp;

处理上传图片的代码段

    uploadImage(e) {
  if (e.target.files[0]) {
    let file = e.target.files[0];

    Jimp.read(file)
      .then(lenna => {
        return lenna
          .resize(256, 256) // resize
          .quality(60) // set JPEG quality
          .write(file.name); // save
      })
      .catch(err => {
        console.error(err);
      });
      conslole.log(lenna);
    var storageRef = fb.storage().ref("products/" + file.name);

    let uploadTask = storageRef.put(file);

    uploadTask.on(
      "state_changed",
      snapshot => {},
      error => {},
      () => {
        uploadTask.snapshot.ref.getDownloadURL().then(downloadURL => {
          this.product.images.push(downloadURL);
          console.log("File available at", downloadURL);
        });
      }
    );
  }
}

使用上面的代码,我得到以下错误消息:

未找到匹配的构造函数重载。请参阅有关如何调用Jimp构造函数的文档。

有人可以帮我弄清楚我在这里犯的错误吗?

0 个答案:

没有答案