使用方式
在 script 中引用组件
import ImagePicker from '@/components/image-picker.vue';export default {components: {ImagePicker},methods: {upSuccess(res) {// 选择完成图片回调返回 res.file 就是上传成功后端返回来的图片路径this.form.image = res.file;}}}
在 template 中使用组件
<image-picker ref="imgPicker" :count="1" @success="upSuccess"></image-picker>
组件属性
| 属性名 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| hide | String | 暂无数据 | 特殊用法 比如上传头像,首页用该属性隐藏不显示组件,再通过手动绑定事件通ref去触发上传组件内部的ChooseImage()方法 |
| count | String, Number | 4 | 最多可上传多少张图片 |
| index | String, Number | 0 | 由父组件传入,传给父组件用, 组件标识 |
| column | String, Number | 4 | 和 grid 的clumn一样,每行多少列 |
| text | String | ‘’ | 上传按钮下放文字 |
上传头像用法示例:
<image @click="openUpload" class="block wh100 radius50" :src="avatar"></image><image-picker :hide="true" ref="imgPicker" :count="1" @success="upSuccess"></image-picker>
在 script 中引用组件
import ImagePicker from '@/components/image-picker.vue';export default {components: {ImagePicker},data() {return {avatar: '/static/images/default-tx.png',//默认头像}},methods: {openUpload() {// 这样就打开了选择上传图片的窗口this.$refs.imgPicker.ChooseImage()},upSuccess(res) {// 选择完成图片回调返回 res.file 就是上传成功后端返回来的图片路径this.avatar = res.file;}}}
