uView1.0的Upload组件上传图片

news/2024/7/20 3:00:29 标签: 前端, javascript, html, 微信小程序, 小程序
htmledit_views">

<template>

<u-upload

     ref="uUpload"

    :file-list="fileList"

    accept="image/jpeg,image/png"    //允许选择图片文件

     :sizeType="sizeType"

     :max-size="2 * 1024 * 1024"    //限制上传的图片文件最大为 2M

     @oversize="oversize"

    @on-remove="deleteImgs"    //移除

    :auto-upload="false"    //禁止自动上传选择的图片文

    max-count="9"     //限制最多只能选择几个图片文件       

   :show-progress="false"     //不显示文件上传进度条

   multiple    //多图
   :previewFullImage="true"    //预览图片时显示完整的原图

   @on-choose-complete="onChooseComplete">
</u-upload>
</template>
html" title=javascript>javascript"><script>
  export default {
    data() {
      return {
         fileList: [], //文件列表
      }
    },
    methods: {
      // 文件超出大小限制
      oversize() {
          uni.showToast({
            title: "图片最大不能超过2M",
            icon: 'none'
          })
      },

    onChooseComplete(event) {
      this.multipleUpload(this.$refs.uUpload.lists, 2)
    },
    // 多张图片上传
    multipleUpload(event, type) {
      let num = 9;
      event.map(item => {
        if (num === event.length) {
          uni.showToast({
            title: '最多上传9张图片',
            icon: 'none'
          })
          return
        }
        num += 1
        this.uploadDo(item, type)
      })
    },
    uploadDo(event, type) {
      uni.uploadFile({
        url: "http://192.168.2.105:18100/file/uploadFile",//仅为示例,非真实的接口地址
        filePath: event.file.path,
        name: "file",
        header: {
          Authorization: `Bearer  +uni.getStorageSync("token")`,
        },
        success: (res) => {
          let resp = JSON.parse(res.data);
          this.form.voucherPictureUrls.push(resp.data);
        },
      });
    },
    //删除图片
    deleteImgs(index, lists, name) {

    },
  }
</script>

uploadDo(event, type) {

   console.log(event, "event");        //上传图片事件
      uni.uploadFile({
        url: "http://192.168.2.105:18100/file/uploadFile",//仅为示例,非真实的接口地址
        filePath: event.file.path,
        name: "file",
        header: {
          Authorization: `Bearer  +uni.getStorageSync("token")`, //要添加header否则接口不能调用
        },
        success: (res) => {

         console.log(res, "res");

          //如果上传成功打印下res,看有没有调用接口以及图片上传回显
          let resp = JSON.parse(res.data);
          this.form.voucherPictureUrls.push(resp.data);
        },
      });
    },


http://www.niftyadmin.cn/n/5002845.html

相关文章

【广州华锐互动】煤矿设备AR远程巡检系统实现对井下作业的远程监控和管理

煤矿井下作业环境复杂&#xff0c;安全隐患较多。传统的巡检方式存在诸多弊端&#xff0c;如巡检人员难以全面了解井下情况&#xff0c;巡检效率低下&#xff0c;安全隐患难以及时发现和整改等。为了解决这些问题&#xff0c;提高煤矿安全生产水平&#xff0c;越来越多的企业开…

Java多线程基础(创建、使用,状态)——Java第九讲

前言 这一讲开始我们将进入java高级部分,包括多线程编程、数据结构、并发编程、设计模式等。本讲先介绍多线程,多线程编程是Java编程中的一个重要部分。它允许程序同时执行多个任务,这有助于提高程序的效率和性能。在Java中,可以通过实现Runnable接口或继承Thread类来创建线…

【元宇宙】区块链,元宇宙最大化的驱动力

如今&#xff0c;一些观察者认为区块链是在结构上实现元宇宙的必要条件&#xff0c;而其他人则认为这种说法是荒谬的。人们对于区块链技术本身仍然有很多困惑&#xff0c;所以根本谈不上清楚地了解込块链技术与元宇宙的关系。所以&#xff0c;我们可以从区块链的定义开始介绍。…

【linux命令讲解大全】048.使用scp命令在Linux中进行文件传输的方法和用途

文章目录 scp补充说明语法选项参数 实例 从零学 python scp 用于在本地主机和远程主机之间复制文件的加密方式。 补充说明 scp命令用于在Linux下进行远程拷贝文件的命令&#xff0c;与类似的命令cp不同&#xff0c;cp只能在本机进行拷贝&#xff0c;不能跨服务器&#xff0c…

Elasticsearch踩坑:启动时 报错 java.nio.file.NoSuchFileException \lib\dt.jar

原因&#xff1a; ES 8.0.x版本对应jdk17以上&#xff0c;jdk17等高版本的jdk在配置环境变量时无需配置 CLASSPATH 解决&#xff1a; 1.将 /etc/profile 中的CLASSPATH的环境变量删除 2.配置立即生效source /etc/profile 3.重启ES

在JS中tramsform与translate区别

在JavaScript中&#xff0c;"transform"和"translate"是用于处理HTML元素的样式属性&#xff0c;它们有以下区别&#xff1a; transform属性&#xff1a; transform属性是一个通用的属性&#xff0c;用于应用一系列的变换效果&#xff0c;包括平移、旋转、…

数据库事务概述

1.1 存储引擎支持情况 SHOW ENGINES 命令来查看当前 MySQL 支持的存储引擎都有哪些&#xff0c;以及这些存储引擎是否支持事务。 能看出在 MySQL 中&#xff0c;只有 InnoDB 是支持事务的。 1.2 基本概念 事务&#xff1a; 一组逻辑操作单元&#xff0c;使数据从一种状态…

SSH 免密登录:普通用户免密配置登录仍需输入密码

一、服务器信息 服务器系统IPAcentos7192.168.0.100Bcentos7192.168.0.101Ccentos7192.168.0.102 二、免密配置 1.1 A 服务器操作 &#xff08;1&#xff09;生成密钥文件 [testlocalhost ~]$ ssh-keygen -t rsa [testlocalhost ~]$ ll .ssh/ total 8 -rw-------. 1 test …