zoukankan      html  css  js  c++  java
  • 如果添加1条数据会等待10秒,你愿意等吗

     首先说明,这个问题出于自己写的一个小demo,很简单的数据添加操作,起初就是添加一条数据,成功之后刷新页面。后面觉得,刷新页面体验不好,就改成成功之后异步加载数据了,界面体验好了一些。

    但是突然的就在想,动态追加的数据其实填写表单的时候就已经有了,等待成功的这个过程和我想要追加到元素其实关系并不是很大,并不需要等它成功之后给我返回数据我才能追加元素,之所以等成功只是为了等一个“信号”,表示成功加入到库里了。

    那么,我进而就在想, 我们是不是可以不用等待成功之后再加载数据,直接填写表单,点击确定后就将数据动态追加到列表,异步请求成功后不做操作(给提示也可以),如果是失败就必须提示。

    其实我觉得是可以的,虽然这种方式有一些限制。

    先附上图:

     ---------------------------------------------------------------------------------------------

     ---------------------------------------------------------------------------------------------

     重点回答以下几个问题,

    1. 这个小demo其实就是加一条数据,没有必要等成功之后再追加元素,点击按钮后就可以追加,时间、用户等信息可以不通过后台返回,JS可以去取当前时间(可以适当忽略JS时间和后台真正请求时的时间差),用户名可以界面上取到,内容就是文本框了,完全可以动态追加到下面的容器中,可能会问如果添加失败了怎么办(这是这里要说的重点问题),个人觉得,添加失败的原因有可能是程序逻辑错误、或者服务器突然跪了、或者网络不好等因素,但综合着看添加失败的几率是很小的,我们没太大必要因为这些因素必须等待成功后才追加上去,一是程序的性能不好一定得解决,不能因为这个做“预判断”。二是这种概率小,如果这个添加需要等待10秒(这里理论上不可能,但如果是一个复杂的添加业务就有可能),那我觉得与其等待10秒为何不优先加载出来,可能添加失败后追加的东西因为没存进去也不会显示,但这种体验应该比等待10秒体验好,因为每一件事情都等成功之后才做的话,这中间可能会有一些我们不需要等待的无用时间。所以,想问,如果一个添加要等10秒,你愿意等吗。

    2. 业务不同,优化程序有别的方式。这里其实主要是想探讨一下做法问题,具体问题具体分析,在软件编码的过程中,是否可以用这种方式,在数据可以从界面取的情况下,不等成功,直接操作,失败给予提示,操作过的DOM因为没有数据支撑刷新页面后自然会撤销。

    突然想到的一点东西,有很多的局限性。

  • 相关阅读:
    RequestMappin
    数组换位子
    mysql 数据表中查找重复记录(条数)
    post测试
    maven
    常用String练习
    删除重复数据
    推荐几个不错的jQuery图表插件,让你的报表更清晰动感
    纯CSS画的基本图形(矩形、圆形、三角形、多边形、爱心、八卦等),NB么?
    在中国,我们的知识产权真的陨落了吗?
  • 原文地址:https://www.cnblogs.com/sunshine-wy/p/5865104.html
Copyright © 2011-2022 走看看