当前位置: 首页 > wzjs >正文

自己做网站用软件查淘宝关键词排名软件

自己做网站用软件,查淘宝关键词排名软件,东莞做网站的公司有哪些,网页加速器免费版 安卓引言 在前端开发中,使用 Element - UI 组件库来构建用户界面是非常常见的操作。其中图片上传功能更是在许多项目中频繁出现,比如用户头像上传、商品图片上传等场景。有时候,我们会有这样的需求:当上传图片达到一定数量后&#xf…

引言

在前端开发中,使用 Element - UI 组件库来构建用户界面是非常常见的操作。其中图片上传功能更是在许多项目中频繁出现,比如用户头像上传、商品图片上传等场景。有时候,我们会有这样的需求:当上传图片达到一定数量后,隐藏图片上传按钮,避免用户继续上传多余图片。今天,我们就来深入探讨如何实现这一功能。

一、准备工作

(一)项目搭建

首先,确保你的项目已经成功引入了 Element - UI 组件库。如果是基于 Vue.js 的项目,可以通过 npm 或 yarn 进行安装:

npm install element-ui -- save
# 或者
yarn add element-ui

然后在项目的入口文件(如main.js)中进行全局注册:

import Vue from 'vue';
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chaldron/index.css';
import App from './App.vue';Vue.use(ElementUI);new Vue({el: '#app',render: h => h(App)
});

(二)基本的图片上传组件使用

在 Vue 组件中,我们可以使用el - upload组件来实现图片上传功能。一个简单的示例如下:

<template><el-uploadclass="upload-demo"action="/your-upload-url":on-change="handleChange":before-upload="beforeUpload":file-list="fileList"list-type="picture - card"><i class="el-icon-plus"></i><div slot="file" slot-scope="{ file }"><img :src="file.url" alt="" class="el-upload-list__item-thumbnail"><span class="el-upload-list__item-actions"><span class="el-upload - list__item-preview" @click="handlePictureCardPreview(file)"><i class="el-icon-zoom-in"></i></span><span class="el-upload-list__item-delete" @click="handleRemove(file)"><i class="el-icon-delete"></i></span></span></div></el-upload>
</template><script>
export default {data() {return {fileList: []};},methods: {handleChange(file, fileList) {console.log(file, fileList);},beforeUpload(file) {return true;},handlePictureCardPreview(file) {// 图片预览逻辑},handleRemove(file, fileList) {// 移除图片逻辑}}
};
</script><style scoped>
.upload - demo {width: 200px;
}
</style>

这里我们设置了图片上传的地址action,定义了上传前的钩子函数beforeUpload,以及图片变化时的钩子函数handleChange等。

二、实现图片上传按钮的隐藏逻辑

(一)设置上传数量限制

我们可以通过el - upload组件的limit属性来设置允许上传的图片数量。例如,我们将其设置为 3,即最多允许上传 3 张图片:

<el-uploadclass="upload-demo"action="/your-upload-url":on-change="handleChange":before-upload="beforeUpload":file-list="fileList"list-type="picture-card":limit="3"
><!-- 其他代码不变 -->
</el-upload>

(二)监听上传图片数量并隐藏按钮

为了实现当上传图片达到一定数量后隐藏上传按钮,我们可以通过计算属性或者watch来监听fileList的长度。

  1. 使用计算属性
<template><el-uploadclass="upload-demo"action="/your-upload-url":on - change="handleChange":before - upload="beforeUpload":file - list="fileList"list - type="picture - card":limit="3":style="{ 'display': canShowUploadButton? 'block' : 'none' }"><i class="el-icon-plus"></i><div slot="file" slot-scope="{ file }"><img :src="file.url" alt="" class="el-upload-list__item-thumbnail"><span class="el-upload-list__item-actions"><span class="el-upload-list__item-preview" @click="handlePictureCardPreview(file)"><i class="el-icon-zoom-in"></i></span><span class="el-upload-list__item-delete" @click="handleRemove(file)"><i class="el-icon-delete"></i></span></span></div></el - upload>
</template><script>
export default {data() {return {fileList: []};},computed: {canShowUploadButton() {return this.fileList.length < 3;}},methods: {handleChange(file, fileList) {console.log(file, fileList);},beforeUpload(file) {return true;},handlePictureCardPreview(file) {// 图片预览逻辑},handleRemove(file, fileList) {// 移除图片逻辑}}
};
</script>

在上述代码中,通过计算属性canShowUploadButton来判断fileList的长度是否小于设定的上传数量限制(这里是 3)。如果小于限制数量,则返回true,表示上传按钮可以显示;否则返回false,上传按钮将通过style中的display属性被隐藏。
2. 使用 watch

<template><el-uploadclass="upload-demo"action="/your-upload-url":on-change="handleChange":before-upload="beforeUpload":file-list="fileList"list-type="picture-card":limit="3":style="{ 'display': uploadButtonDisplay }"><i class="el-icon-plus"></i><div slot="file" slot-scope="{ file }"><img :src="file.url" alt="" class="el-upload-list__item-thumbnail"><span class="el-upload-list__item-actions"><span class="el-upload-list__item-preview" @click="handlePictureCardPreview(file)"><i class="el-icon-zoom-in"></i></span><span class="el-upload-list__item-delete" @click="handleRemove(file)"><i class="el-icon-delete"></i></span></span></div></el-upload>
</template><script>
export default {data() {return {fileList: [],uploadButtonDisplay: 'block'};},watch: {fileList: {handler(newVal) {if (newVal.length >= 3) {this.uploadButtonDisplay = 'none';} else {this.uploadButtonDisplay = 'block';}},deep: true}},methods: {handleChange(file, fileList) {console.log(file, fileList);},beforeUpload(file) {return true;},handlePictureCardPreview(file) {// 图片预览逻辑},handleRemove(file, fileList) {// 移除图片逻辑}}
};
</script>

这里使用watch来监听fileList的变化,当fileList的长度发生改变时,根据长度是否达到或超过限制数量,动态修改uploadButtonDisplay的值,从而控制上传按钮的显示与隐藏。

三、进一步优化与拓展

(一)提示用户已达上传数量限制

当上传按钮隐藏后,为了给用户更好的提示,我们可以添加一个提示信息,告知用户已经达到上传数量限制。比如,在组件中添加一个el - tooltip

<template><div><el-uploadclass="upload-demo"action="/your-upload-url":on-change="handleChange":before-upload="beforeUpload":file-list="fileList"list-type="picture-card":limit="3":style="{ 'display': canShowUploadButton? 'block' : 'none' }"><i class="el-icon-plus"></i><div slot="file" slot - scope="{ file }"><img :src="file.url" alt="" class="el - upload-list__item-thumbnail"><span class="el-upload-list__item-actions"><span class="el-upload-list__item-preview" @click="handlePictureCardPreview(file)"><i class="el-icon-zoom-in"></i></span><span class="el-upload-list__item-delete" @click="handleRemove(file)"><i class="el-icon-delete"></i></span></span></div></el-upload><el-tooltipv-if="!canShowUploadButton"content="已达到上传数量限制"placement="top"><i class="el-icon-information-circle"></i></el-tooltip></div>
</template><script>
export default {data() {return {fileList: []};},computed: {canShowUploadButton() {return this.fileList.length < 3;}},methods: {handleChange(file, fileList) {console.log(file, fileList);},beforeUpload(file) {return true;},handlePictureCardPreview(file) {// 图片预览逻辑},handleRemove(file, fileList) {// 移除图片逻辑}}
};
</script>

(二)动态调整上传数量限制

在实际应用中,上传数量限制可能需要根据不同的业务场景动态调整。我们可以将limit属性设置为一个动态绑定的值,比如从父组件传递过来的 props:

<template><el-uploadclass="upload-demo"action="/your-upload-url":on-change="handleChange":before-upload="beforeUpload":file-list="fileList"list-type="picture-card":limit="uploadLimit":style="{ 'display': canShowUploadButton? 'block' : 'none' }"><!-- 其他代码不变 --></el-upload>
</template><script>
export default {props: {uploadLimit: {type: Number,default: 3}},data() {return {fileList: []};},computed: {canShowUploadButton() {return this.fileList.length < this.uploadLimit;}},methods: {handleChange(file, fileList) {console.log(file, fileList);},beforeUpload(file) {return true;},handlePictureCardPreview(file) {// 图片预览逻辑},handleRemove(file, fileList) {// 移除图片逻辑}}
};
</script>

这样,父组件就可以根据实际需求传递不同的uploadLimit值,灵活调整上传数量限制。

四、总结

通过上述步骤,我们成功实现了在 Element - UI 中,当图片上传达到一定数量后隐藏上传按钮的功能。同时,我们还对其进行了优化和拓展,提升了用户体验和功能的灵活性。在实际项目开发中,我们可以根据具体业务需求进一步完善相关功能,比如添加更丰富的提示信息、优化图片上传的交互流程等。掌握这些技巧,能让我们在使用 Element - UI 构建应用时,打造出更加友好、高效的用户界面。希望本文能对你有所帮助,让你在前端开发的道路上更进一步。

http://www.dtcms.com/wzjs/383526.html

相关文章:

  • 专业企业网站建设定制网络推广外包一年多少钱
  • 徐州新沂网站建设深圳百度搜索排名优化
  • 做网站建设需要会哪些成品网站1688入口网页版怎样
  • 旅游网站排名榜seo推广服务
  • 企业 北京 响应式网站制作代发百度帖子包收录排名
  • 如何做一个门户网站成人大学报名官网入口
  • 嘉兴做网站美工的工作成都seo优化公司
  • 制作小程序代码品牌推广百度seo
  • 海外网站怎么浏览站长工具seo词语排名
  • 做时时彩网站犯法吗教程推广优化网站排名
  • 网站正在建设中_敬请期待制作网页的网站
  • 制作做动画的网站营销伎巧第一季
  • 电商网站服务器如何推广app赚钱
  • 什么是网站集约化建设推广方案范例
  • 专题学习网站开发流程如何在微信上做广告
  • 广州在线图文网络科技中心网站建设郑志平爱站网创始人
  • 网站设置iis日志长春seo排名
  • 建设部一体化监管平台网站首页北京seo优化排名
  • 电商网站设计图片素材常德seo
  • wordpress主题知言嘉兴seo计费管理
  • 企业网站建设能开广告服务费吗网络营销岗位职责和任职要求
  • 阿里云备案 网站备案域名购买发稿媒体平台
  • 网站建站公司一站式服务网络服务器的作用
  • 长春网站制作公司搭建自己的网站
  • 深圳建设集团有限公司官网杭州优化seo公司
  • qq互联 网站建设不完善移动端排名优化软件
  • 用模板建商场购物网站微信朋友圈推广文案
  • 山东威海网站开发百度推广客服人工电话多少
  • 网站服务器有问题怎么办啊网络营销工具介绍
  • 网站模板修改软件竞价托管公司排名