越写悦快乐之Vue项目如何集成Uppy

2020-11-30  本文已影响0人  韬声依旧在路上
Uppy - 图片来自我的手机

今天的越写悦快乐之系列文章为大家带来Vue项目如何集成Uppy。作为一名爱做梦的码农来说,不管是前端、后端、抑或是测试、运维,都需要保持一定的好奇心才可以,那么大家都知道Vue作为前端框架的集大成者,拥有着易用、灵活和高效的优点,那么对于在Vue项目中集成Uppy,大家有没有实践过呢?今天我为大家分享一下如何在Vue项目中集成Uppy。

最近Uppy官方刚发布了对Vue的支持,欲知详情,请参考官方文档

开发环境

特别说明

Uppy是一款简洁、开源、模块化的JavaScript文件上传框架,支持Angular、Vue和React。

接入步骤

创建项目

我们可以通过两种方式来创建项目:

1)命令行

2)Vue UI

在命令行或者终端输入vue ui即可打开默认浏览器,然后选择项目存放位置、输入项目信息、包管理方式等信息,最后点击创建工程。

选择项目位置 - 图片来自我的手机 选择包管理方式 - 图片来自我的手机 选择默认配置 - 图片来自我的手机

安装依赖Uppy组件

我们在终端下执行以下命令:

yarn add @uppy/core @uppy/tus @uppy/vue -S

绑定Uppy

既然我们在项目中引入了Uppy,那么我们可以直接在App.vue文件中引入Uppy组件,具体的写法可参考以下代码:

<template>
  <div id="app">
    <dashboard :uppy="uppy" :plugins="['Webcam']"/>
  </div>
</template>

<script>
import { Dashboard } from '@uppy/vue'

import '@uppy/core/dist/style.css'
import '@uppy/dashboard/dist/style.css'

import Uppy from '@uppy/core'
import Webcam from '@uppy/webcam'

import Tus from '@uppy/tus'

export default {
  name: 'App',
  components: {
    Dashboard
  },
  computed: {
    uppy: () => new Uppy()
      .use(Webcam)
      .use(Tus, { endpoint: 'https://master.tus.io/files/' })
      .on('complete', result => {
        console.log('successful files:', result.successful)
        console.log('failed files:', result.failed)
      })
  },
  beforeDestroy () {
    this.uppy.close()
  }
}
</script>

在官方封装的Vue组件中,我们可以使用以下组件来构建页面:

代码说明

查看集成结果

我们在项目所在的控制台执行yarn serve命令执行以下操作:

参考

个人收获及总结

本文介绍了如何在Vue项目中集成Uppy,文件上传作为一个常见的功能,通常会和其他业务场景一起为用户提供一致优越的用户体验,我相信这仅仅是一个开始,我们不仅要搞明白文件上传的原理,还要持续改进我们的产品和服务,为用户创造价值。你的个人价值也会在工作中慢慢体现,我也相信你会在工作中找到乐趣,快乐工作,工作快乐是我们不懈的追求。若是我的文章对你有所启发,那将是我莫大的荣幸。

上一篇下一篇

猜你喜欢

热点阅读