更新记录

1.0.1(2024-07-17) 下载此版本

第一版上传插件


平台兼容性

Vue2 Vue3
×
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
× × × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序
× × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
× × × × × × × × ×

使用方法

import WolfFileUpload from '@/components/wolf-file-upload/index.vue';
components:{
    WolfFileUpload
},
<WolfFileUpload
    :uploadWidth="286"
    :uploadHeight="214"
    :windowHeight="windowHeight"
    :flag="1"
    :fileList="fileList1"
    :imageSize="1"
    :defaultStr="'点击上传执照'"
    :params="{name: '', type: ''}"
    :uploadUrl="'http://xxx.xxx.xxx/uploadFile'"
    :token="接口需要验证的用户token"
    @uploadSuccess="uploadSuccess"
    @delImgItem="delImgItem"
/>

参数

属性 类型 说明 默认值
uploadWidth Int 上传控件宽度 默认150,单位rpx
uploadHeight Int 上传控件高度 默认150,单位rpx
windowHeight Int 屏幕高度 必填、用于预览图片
flag String 当前组件的标记 多个组件在一个页面,回调区分处理时用
fileList Array 绑定图片地址值 [{url:''}],url参数放完整图片地址,其他参数随意
imageSize Int 可上传图片个数 默认1
defaultStr String 上传控件文案 默认 '点击上传'
params Object 额外的自定义参数
uploadUrl String 图片上传接口地址 必填
token String 接口需要校验token就填
selCount Int 上传时同时选择图片个数 默认1
isCrop Boolean 是否先裁剪再上传 默认false
@uploadSuccess 函数 上传成功回调 必须
@delImgItem 函数 删除图片回调 必须

说明

/*上传成功回调触发,res返回的内容,_flag传入的flag值,用于多个控件区分处理*/
uploadSuccess(res, _flag){

}
/*点击删除按钮触发,_flag传入的flag值,用于多个控件区分处理,_index删除对应图片的下标*/
delImgItem(_flag, _index){

}

示例

<WolfFileUpload
    :windowHeight="windowHeight"
    :flag="1"
    :fileList="fileList1"
    :imageSize="6"
    :uploadUrl="'http://xxx.xxx.xxx/uploadFile'"
    :token="接口需要验证的用户token"
    @uploadSuccess="uploadSuccess"
    @delImgItem="delImgItem"
/>

<WolfFileUpload
    :uploadWidth="286"
    :uploadHeight="214"
    :windowHeight="windowHeight"
    :flag="2"
    :fileList="fileList2"
    :imageSize="1"
    :defaultStr="'点击上传执照'"
    :params="{name: '', type: ''}"
    :uploadUrl="'http://xxx.xxx.xxx/uploadFile'"
    :token="接口需要验证的用户token"
    @uploadSuccess="uploadSuccess"
    @delImgItem="delImgItem"
/>

<script>
    import WolfFileUpload from '../../components/wolf-file-upload/index.vue'
    export default {
        components: {
            WolfFileUpload
        },
        data() {
            return {
                fileList1: [],
                fileList2: [],
                windowHeight: 0
            }
        },
        onLoad() {
            this.windowHeight = uni.getSystemInfoSync().windowHeight
        },
        methods: {
            /**
             * 图片删除
             * @param {Object} _flag
             * @param {Object} _index
             */
            delImgItem(_flag, _index){
                if(_flag == 1){
                    this.fileList1.splice(_index, 1)
                }else if(_flag == 2){
                    this.fileList2 = []
                }
            },
            /**
             * 上传图片回调
             * @param {Object} res
             * @param {Object} _flag
             */
            uploadSuccess(res, _flag){
                console.log("上传图片回调")
                console.log(res)

                //以下根据自己接口返回值处理
                let x = {
                    url: ''
                }

                if(_flag == 1){
                    this.fileList1.push(x)
                }else if(_flag == 2){
                    this.fileList2.push(x)
                }
            },
        }
    }
</script>

隐私、权限声明

1. 本插件需要申请的系统权限列表:

授权图片获取、摄像头拍照

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

用户自行配置上传图片接口地址

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问