参考: https://blog.csdn.net/u012377333/article/details/52326158

1、前端中所有的按钮,点击后发送报文的标签,都必须加上 去重功能。防止重复发送信息(有的信息重复发送是有很大问题的,比如金融中的借钱,发送1次,发送多次,金额是会累加的。客户明明是借了1次,但是账户上显示金额很多,肯定会引发纠纷)。

2、H5页面,对于需要前面页面的提供的参数 或 用户输入数据 的页面。一定要考虑  跳转页面后,回退页面的数据必须要保持不变。
   跳转前将相应的数据保存到 缓存里( vuex 或 localStorage ) 。跳回来时使用相同的参数 再次进入页面。
 
   体会:页面中有一些数据是通过请求后获取到的,获取到的数据不用缓存。把获取接口 关键的参数 ( 前一页面提供的参数 或 用户输入数据 )  缓存起来就可以了。进入时重新请求获取这些数据 ;
      尽量避免 localStorage 和 sessionStorage 使用的字段太多,比较容易乱。字段多了,在其他的页面根本不知道某个字段到底有没有设置,逻辑会比较乱,不好管理。
 
3、H5页面缓存的选择(localStorage 、sessionStorage、cookie、vuex):具体使用哪个根据 变量的具体需求  来定。
  注意点:选择哪种缓存必须要考虑以下几点
    a、关闭网页,再次进入页面,缓存的数据是否要保持:(localStorage是永久保存的)
       有些数据在页面关闭时必须清除,不然会影响下次进入页面的结果。比如,调接口把openId(用户id)缓存下来,下次进入时,调这个获取openId失败了,可是这个值在缓存还有,页面还能正常进入。
        localStorage 的生命周期是 永久的,js不去清除,永远存在。(如果关闭网页要清除的数据,千万不要使用localStorage,确保再次进入该页面时,这些数据是空的)
       b、刷新页面后,缓存的数据是否还需要存在。(vuex数据,刷新后,缓存没有了)
    c、首次进入 首页 不能有缓存,回退到首页时需要这个缓存。这种情况不能使用localStorage ,因为localStorage 无法在关闭页面时清除数据。
      比如,一些微信的code参数是有时效性的,首页进入通过code参数获取到用户信息后,缓存起来,页面回退到首页就不再使用code去获取用户信息了,去缓存中获取。
      如果使用localStorage,回退到首页,先删除缓存,调用接口已经无效,无法获取缓存的数据,页面就不正常了。
      总结起来:就是首页缓存的数据不要使用localStorage,除非需要像博客那样把登入信息永久保存的,不过这种保存一般是使用cookie来实现的。

4、首屏 loading图,提升用户体验

5、优化SPA应用的首屏加载速度慢

  a、将公用的JS库(或css库)通过script(或link)标签外部引入,减小 app.bundel 的大小,让浏览器并行下载资源文件,提高下载速度;

  b、页面和组件使用 懒加载 的方式引入

6、某个页面是通过链接进去的还是通过回退按钮进入的(填表单的页面,点击按钮调到其他的页面时,再回退,之前填的数据是需要缓存的。而通过链接进入【正常步骤】的页面是没有缓存数据的)

H5项目(基于vue框架)常见问题及注意事项的更多相关文章

  1. 基于VUE框架 与 其他框架间的基本对比

    基于VUE框架的基本描述 与 其他框架间的基本对比 2018-11-03  11:01:14 A B React React 和 Vue 有许多相似之处,它们都有: 使用 Virtual DOM 提供 ...

  2. 基于vue框架项目开发过程中遇到的问题总结(三)

    这次遇到的一个问题困扰了我很久很久,大致就是vue路由的addRoutes方法的使用,每次在调用了这个之后router对象中并没有将路由添加进去,接下来,我一步一步的分析原因及解决方法(个人见解,仅供 ...

  3. 基于vue框架项目开发过程中遇到的问题总结(一)

    (一)关于computed修改data里变量的值 问题:computed里是不能直接修改data里变量的值,否则在git commit 时会报错 解决:在computed里使用get和set来进行获取 ...

  4. 基于vue框架项目开发过程中遇到的问题总结(二)

    1.mouseup事件丢失 查看了网上资料,造成mouseup事件丢失有两种原因: (1)触发了浏览器的drag事件 (2)由于鼠标离开了操作的区域,触发了mouseleave事件导致mouseup丢 ...

  5. Win10环境前后端分离项目基于Vue.js+Django+Python3实现微信(wechat)扫码支付流程(2021年最新攻略)

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_182 之前的一篇文章:mpvue1.0+python3.7+Django2.0.4实现微信小程序的支付功能,主要介绍了微信小程序内 ...

  6. 基于vue框架手写一个notify插件,实现通知功能

    简单编写一个vue插件,当点击时触发notify插件,dom中出现相应内容并且在相应时间之后清除,我们可以在根组件中设定通知内容和延迟消失时间. 1. 基础知识 我们首先初始化一个vue项目,删除不需 ...

  7. yarn 常用命令(基于vue框架)

    初始化项目 yarn add init 安装vue yarn add vue 安装webpack,webpack-dev-server(是一个小型的Node.js Express服务器) yarn a ...

  8. 一款基于SSM框架技术的全栈Java web项目(已部署可直接体验)

    概述 此项目基于SSM框架技术的Java Web项目,是全栈项目,涉及前端.后端.插件.上线部署等各个板块,项目所有的代码都是自己编码所得,每一步.部分都有清晰的注释,完全不用担心代码混乱,可以轻松. ...

  9. 基于vue模块化开发后台系统——构建项目

    文章目录如下:项目效果预览地址项目开源代码基于vue模块化开发后台系统--准备工作基于vue模块化开发后台系统--构建项目基于vue模块化开发后台系统--权限控制 前言 在熟悉上一篇说到准备工具之后, ...

随机推荐

  1. mysql学习-explain

    表头包含有: id---select_type---table---type---possible_keys---key---key_len---ref---rows---Extra id:selec ...

  2. IDEA @Override is not allowed when implementing interface method(转载)

    近期研究idea,在编码过程发现报错:@Override is not allowed when implementing interface method .找到一个老外的回答,感觉挺有用的,记录下 ...

  3. HTML-参考手册: HTML 事件属性

    ylbtech-HTML-参考手册: HTML 事件属性 1.返回顶部 1. HTML 事件属性 全局事件属性 HTML 4 的新特性之一是可以使 HTML 事件触发浏览器中的行为,比方说当用户点击某 ...

  4. 用 Flask 来写个轻博客 (6) — (M)VC_models 的关系(one to many)

    Blog 项目源码:https://github.com/JmilkFan/JmilkFan-s-Blog 目录 目录 前文列表 扩展阅读 前言 一对多 再一次 sync db How to use ...

  5. VMware Workstation Pro 15.5.0 官方版本及激活密钥

    0x01:下载连接: https://download3.vmware.com/software/wkst/file/VMware-workstation-full-15.5.1-15018445.e ...

  6. linux(Ubuntu) 搭建LAMP环境

    1.更新源 sudo apt- get update 2.安装常用软件 SSH.Vim.Git.Tree ①SSH sudo apt-get install openssh-server 管理命令:s ...

  7. 调用WPF程序时传入参数

    http://blog.csdn.net/martin_cheng/article/details/41351013 http://blog.csdn.net/libby1984/article/de ...

  8. FZU 2079 最大获利(线段树+DP)

    Description Sean准备投资一些项目.有n个投资项目,投资第i个项目需要花费Ci元.Sean发现如果投资了某些编号连续的项目就能赚得一定的钱.现在给出m组连续的项目和每组能赚得的钱,请问采 ...

  9. CentOS7下yum安装Jenkins

    Jenkins官网最新稳定版:https://pkg.jenkins.io/redhat-stable/ 1.下载依赖 sudo wget -O /etc/yum.repos.d/jenkins.re ...

  10. 使用Hbuilder 报错The keyword 'export' is reserved

    右击文件 > 验证本文档语法(V)后报错 解决: 项目右键->”属性”->”语法&框架”界面中配置项目的javaScript版本,将ECMAScript5.1 修改为6.