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

营销型网站建设优势假如电脑的服务器关闭后做的网站还能打开吗

营销型网站建设优势,假如电脑的服务器关闭后做的网站还能打开吗,宜昌恒大帝景地址,电商网站是怎么建设的当使用 Vant 的上传组件时,你可能会遇到以下情况: 选择图片后立即显示本地预览图(正确) 上传到服务器并等待接口返回 接口返回后图片会"闪动"一下再显示 这种闪动现象通常是由于 Vant 上传组件的工作机制导致的。 …

当使用 Vant 的上传组件时,你可能会遇到以下情况:

  1. 选择图片后立即显示本地预览图(正确)

  2. 上传到服务器并等待接口返回

  3. 接口返回后图片会"闪动"一下再显示

这种闪动现象通常是由于 Vant 上传组件的工作机制导致的。

根本原因

  1. 双阶段渲染

    • 第一阶段:选择文件后立即使用 URL.createObjectURL() 创建本地预览

    • 第二阶段:上传完成后用服务器返回的 URL 替换本地预览

  2. URL 替换

    • 本地预览的 Blob URL 和服务器返回的 HTTP URL 不同

    • 替换时浏览器需要重新加载图片

  3. Vant 默认行为

    • 上传过程中会显示上传状态

    • 上传完成后会更新文件列表

解决方案

方案1:保持使用本地预览(不替换URL)

<template>
  <van-uploader
    v-model="fileList"
    :after-read="uploadFile"
    :before-read="beforeRead"
  />
</template>

<script setup>
import { ref } from 'vue';

const fileList = ref([]);

const uploadFile = (file) => {
  // 保持使用本地预览,不上传
  file.status = 'done';
  file.message = '上传成功';
  
  // 如果需要上传到服务器但不替换图片:
  // uploadToServer(file.file).then(res => {
  //   // 不更新URL,保持本地预览
  //   file.status = 'done';
  // });
};
</script>

方案2:优化上传流程避免闪动

vue

复制

<template><van-uploaderv-model="fileList":after-read="uploadFile"/>
</template><script setup>
import { ref } from 'vue';const fileList = ref([]);const uploadFile = async (file) => {// 1. 立即显示为完成状态file.status = 'done';// 2. 静默上传(不显示上传状态)try {const serverUrl = await uploadToServer(file.file);// 3. 直接更新URL而不改变状态file.url = serverUrl;} catch (error) {// 上传失败时显示错误状态file.status = 'failed';file.message = '上传失败';}
};async function uploadToServer(file) {// 你的上传逻辑return 'https://example.com/new-image-url.jpg';
}
</script>

方案3:自定义预览逻辑(推荐)

vue

复制

<template><van-uploaderv-model="fileList":after-read="handleUpload":before-read="addLocalPreview"/>
</template><script setup>
import { ref } from 'vue';const fileList = ref([]);// 添加本地预览
const addLocalPreview = (file) => {return new Promise((resolve) => {const reader = new FileReader();reader.onload = (event) => {file.url = event.target.result; // 使用Base64而不是Blob URLresolve(true);};reader.readAsDataURL(file.file);});
};// 上传处理
const handleUpload = async (file) => {file.status = 'uploading';try {const serverUrl = await uploadToServer(file.file);// 保持相同的URL格式(Base64 -> HTTP)file.url = serverUrl;file.status = 'done';} catch (error) {file.status = 'failed';file.message = '上传失败';}
};
</script>
http://www.dtcms.com/wzjs/800497.html

相关文章:

  • phpcms wordpress宁波品牌网站推广优化公司
  • 网站开发公司有资质吗指数型基金怎么买
  • 备案网站负责人必须为法人吗seo评测论坛
  • 系统网站台州北京网站建设
  • 公司发布网站需要备案郑州公司网站平台建设
  • 松原网站建设购买一级域名做网站
  • 响应式网站图解企业网站cms源码
  • 中国建设教育网站旅游网站建设策划书范文
  • 怎么看一个网站什么语言做的免费网站推广软件有哪些
  • 天河建设网站帝国cms对比WordPress
  • 网站怎么优化搜索佛山网站定制开发
  • 做网站那家比较好珠海手机网站制作
  • 公众号和网站先做哪个比较好国外域名注册商排名
  • 网站建设站点标题在什么位置计算机哪个专业好
  • 自己做一个网站需要多少钱商标图案自动生成
  • 做化工的外贸网站都有什么地方网站技术维护费
  • 静态网站开发课程辽宁省工程建设信息网官网
  • 浅谈网站的主色调设计wordpress 近期文章 代码
  • 做企业网站一般用什么服务器电商详情页设计
  • 东莞建设网雅园新村第20期名单公如何写网站优化方案
  • 个人简历免费可填写的模板下载揭阳seo推广公司
  • 网站怎么拿百度收入公司章程在工商官网哪里下载
  • vpn网站模板遵义祥云平台网站建设
  • 清华建设工程有限公司公司网站昆明做网站哪家
  • 微信公众号和微网站建设工程施工合同条例
  • 东阿企业做网站推广php在网站制作中的运行机制
  • 产品宣传网站的重点阳江58同城招聘网最新招聘
  • 广汉市建设局官方网站百度信息流推广平台
  • 商城网站模板建设银行打印回单网站
  • 搭建一个企业网站需要多少钱文本文档做网站