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

自学网站建设哪个网站好b站推广网站2024年

自学网站建设哪个网站好,b站推广网站2024年,怎么用ps做网站超链接,wordpress 地址调用一、附件上传 1、在element-ui上面复制相应代码 a、accept"image/*,.pdf,.docx,.xlsx,.doc,.xls" 是规定上传文件的类型,若是不限制,可以直接将accept‘all即可; b、:action"action" 这个属性就是你的上传附件的地址&am…

一、附件上传

       1、在element-ui上面复制相应代码

            

            a、accept="image/*,.pdf,.docx,.xlsx,.doc,.xls"  是规定上传文件的类型,若是不限制,可以直接将accept=‘all'即可;

             b、:action="action" 这个属性就是你的上传附件的地址;

一般情况下,上传一个文件,后端会给两个接口,第一个接口就是写在action里面的,这个接口的作用是返回一个id或则一个其他的唯一属性;接着第二个接口就是上传附件的接口,这个返回的唯一属性会被当做第二个接口的参数提交,此时就已经完成了附件的上传。

二、在线查看

        1、首先先安装依赖包

              用的是vue-office,地址:vue-office简介 | vue-office (501351981.github.io)

#docx文档预览组件
npm install @vue-office/docx vue-demi
#excel文档预览组件
npm install @vue-office/excel vue-demi
#pdf文档预览组件
npm install @vue-office/pdf vue-demi
//如果是vue2.6版本或以下还需要额外安装 @vue/composition-api
npm install @vue/composition-api

       2、在vue文件中引入vue-office

           

       3、开始判断文件的类型

            接着我们要想实时的看到自己的附件,那么肯定一点就是得区分我们得附件类型

            判断文件的类型我这里有两个方法推荐:

            第一种:就是运用计算属性和includes来设置一个变量,再根据变量使用v-if控制显示

                        

             第二种:js的endsWith()   该方法用于测试字符串是否以指定的后缀结束,将获取到的文件名放入该方法中,判断后缀类型,不过这里的判断返回的是布尔值,然后再配合v-if使用以控制显示。

        4、添加点击事件

              这里设计的在线预览是点击附件后直接在下方显示

              找到上传附件时的钩子,根据业务需求,判断是上传之前可以看还是上传之后可以看,有两种情况

              第一种:在上传附件之前就想查看

                            这种情况我先放一下,因为这里我先讲得是直接上传附件,在上传之前查看,一般用在手动上传的时候,我后续再更,但是放心,我都会更新记录下来的~~

              第二种:在上传附件成功之后再查看

                             给附件绑定一个点击事件:on-preview="handlePreview",绑定这个事件之后,可以获取到参数里面的file,即一个对象,将这个对象赋值给一个新的对象this.currentFile = file,而这个currentFile在判断类型时不可缺少的;之后,取currentFile里面raw赋值给vue-office标签里的src属性就可以了

              第三种:同时拥有,哈哈哈哈这种就把前两种都写上就行了

目前这一块我是以组件的形式在使用,毕竟用的比较多,这样更方便些,以上是我自己的总结,主要是给自己看的,因为我有健忘,一段时间不用就会忘记,大家要是有疑问可以随时私信我,我看到了就会回复,毕竟学习也是相互的,加油。

以下是源码----------------------------------

<template><div><!-- <el-dialog title="上传附件" :visible.sync="dialogFormVisible" width="50%" append-to-body="true"> --><el-uploadref="upload"class="upload-demo":action="action":before-remove="beforeRemove"multiple:on-preview="handlePreview":file-list="fileList":on-success="handleSuccess":before-upload="beforeUpload"accept="image/*,.pdf,.docx,.xlsx,.doc,.xls":on-remove="handleRemove":limit="6":on-exceed="handleExceed"><el-button size="small" type="primary">选取附件</el-button></el-upload><!-- 查看 --><div v-if="currentFile"><div v-if="currentFileType === 'excel'" class="officeShow"><vue-office-excel :src="fileSrc" style="height: 40vh;width: 100%;" /></div><div v-else-if="currentFileType === 'pdf'" class="officeShow"><vue-office-pdf :src="fileSrc" style="height: auto;width: 100%;" /></div><div v-else-if="currentFileType === 'word'" class="officeShow"><vue-office-docx :src="fileSrc" style="height: 40vh;width: 100%;overflow: scroll;" /></div><div v-else class="officeShow"><img :src="fileSrc" style="height: auto;width: 100%;"></div></div><!-- <div slot="footer" class="dialog-footer"><el-button @click="cancellation">取 消</el-button><el-button type="primary" @click="save">保 存</el-button><el-button type="primary" @click="upClick">上传</el-button></div> --><!-- </el-dialog> --></div>
</template><script>
// 引入VueOfficePdf组件
import VueOfficePdf from '@vue-office/pdf'
// docx
import VueOfficeDocx from '@vue-office/docx'
import '@vue-office/docx/lib/index.css'
// 引入VueOfficeExcel组件
import VueOfficeExcel from '@vue-office/excel'
// 引入相关样式
import '@vue-office/excel/lib/index.css'export default {components: {VueOfficeExcel,VueOfficePdf,VueOfficeDocx},props: {projectId: {type: String,default: ''}},data() {return {dialogFormVisible: false,action: process.env.VUE_APP_BASE_API + '/file/upload',fileList: [],currentFile: null,files: []}},computed: {currentFileType() {let type = ''if (this.currentFile.name) {const arr = this.currentFile.name && this.currentFile.name.split('.')type = arr[arr.length - 1]}switch (true) {case ['xls', 'xlsx'].includes(type):return 'excel'case ['doc', 'docx'].includes(type):return 'word'case ['pdf'].includes(type):return 'pdf'default:return 'img'}},fileSrc() {if (this.currentFileType === 'img') {const windowURL = window.URL || window.webkitURLconst src = windowURL.createObjectURL(this.currentFile.raw)return src} else {return this.currentFile.raw}}},methods: {show() {this.dialogFormVisible = true},cancellation() {this.dialogFormVisible = falsethis.fileList = []},// 暂存// save() {//   this.dialogFormVisible = false//   this.$notify({//     title: '成功',//     message: '已保存',//     type: 'success',//     duration: 1000//   })// },handleRemove(file, fileList) {this.fileList = fileList// 判断溢出的文件是否当前预览中的文件if (fileList.findIndex(item => item.uid === this.currentFile.uid) === -1) {this.currentFile = null}},handlePreview(file) {// console.log(file)this.currentFile = file},handleExceed(files, fileList) {this.$message.warning(`当前限制选择 6 个文件,本次选择了 ${files.length}个文件,共选择了 ${files.length + fileList.length}个文件`)},beforeRemove(file, fileList) {return this.$confirm(`确定移除 ${file.name} ?`)},handleSuccess(response, file, fileList) {console.log(response, file, fileList)this.files.push(response)},beforeUpload(file) {const isLt20M = file.size / 1024 / 1024 < 20if (!isLt20M) {this.$message.error('上传文件大小不能超过 20MB!')}return isLt20M}}
}
</script><style lang="scss" scoped></style>

.....后续马上更,我有其他事情需要去处理一下

http://www.hkea.cn/news/494818/

相关文章:

  • 深圳 网站制作 哪家百度搜索排名优化哪家好
  • 网站运营者网址发稿平台
  • 内蒙古网站制作公司拼多多网店代运营要多少费用
  • 免费网站建设协议baike seotl
  • 做网站的好处和坏处怎么创建自己的网址
  • 兰州新区城乡建设局网站seo sem是什么职位
  • 衡水网站制作公司自媒体软文发布平台
  • 东莞圆心科技网站开发网页搜索
  • 日照网站建设价格百度推广怎么优化关键词的质量
  • 竭诚网络网站建设开发百度搜索竞价推广
  • 浙江住房和城乡建设厅报名网站下拉关键词排名
  • 银川哪里做网站百度网址名称是什么
  • 合肥公司网站建设价格低西安网络科技公司排名
  • 怎么样建设个人网站企业文化建设
  • 如何知道网站有没有备案成都seo公司
  • wordpress 艺术主题南京网络优化公司有哪些
  • 贵阳网站备案百度网站优化方案
  • 单位网站建设论文怎么做竞价托管
  • 建筑公司网站有哪些谈谈自己对市场营销的理解
  • 做ppt音乐怎么下载网站企业培训课程有哪些
  • magento网站建设网站优化排名软件网站
  • 做生鲜食品最好的网站网络推广及销售
  • 销售管理系统需求分析长沙seo代理
  • 站长网站查询深圳百度关键字优化
  • 用net语言做网站平台好不好企业培训师资格证报考2022
  • 成都定制网站设竞价推广遇到恶意点击怎么办
  • 制作视频网站建设友链交易网
  • 做外贸是不是要有网站腾讯企点app下载安装
  • 网站开发快递文件国外网站怎么推广
  • 网站和搜索引擎站长论坛