网页开发过程中,尤其是在表单开发过程中,不可避免的会有各种各样的基础数据需要展示,供用户使用。例如,大家在办理信用卡时,经常需要填写各种表单数据,其中:性别(男、女)、学历(高中及以下、大专、本科、研究生及以上)、状态(启用、停用)等等,均属此类。日常软件开发过程中,通常习惯称之为配置项。在系统中配置后,提供相应的接口,方便在多个表单页重复使用。

网页或APP中初始化配置项,通常的做法是在页面初始化的时候,有些需要立即展示给用户的,则优先加载配置项内容;否则,可在使用的时候再行加载也可。若配置项使用频率较高,或配置项本身配置内容较多(耗用网络资源等),则可以考虑使用本地缓存的方式对配置项进行暂存。

VUE中初始化配置项,可在 methods 中编写相应的方法,请求服务端获取配置项内容,在页面初始化时调用方法即可。

我通常习惯将所需的配置项,统一存放在 selectConditions 中,以便后期使用或在页面跳转时,传递配置项。比如,新增或修改表单页面跳转时进行配置项的传输,减少服务请求。

VUE初始化请求后端服务,获取配置项操作(后端接口服务请求不再赘述),如下所示:

  上述代码,请求后端服务接口,并进行相应的数据处理,仅获取需要的配置项内容进行保存。   

  获取配置项信息后,在页面对应所需的属性位置,进行相应的数据绑定,实现相应的功能即可。部分源码如下所示:

  上述源码中, @focus=“pullData” 即为在需要使用的时候,获取相应的配置项、绑定。

优点是,若用户未操作相应功能,则节省了网络流量,页面初始化速度也快;操作时的数据时效性好。

缺点是,若进行页面跳转时,需要将配置项传给跳转页面,则必须在跳转前进行配置项数据的获取。否则,跳转页面将缺失配置项。

页面配置项的初始化,无论使用哪种方式,无所谓对错,均可实现相应的功能,适当权衡即可。

VUE-009-页面打开时初始化配置项内容的更多相关文章

  1. 使EditText不要在页面打开时自动获取焦点(因为软键盘会自动弹出)

    当页面上有EditText时,第一个EditText会在页面打开时自动的获取焦点,这样带来的问题就是系统键盘会自动的弹出来. 解决方法比较简单只要为EditText的父控件设置一下就行了: andro ...

  2. vue 浏览器页面刷新时执行一段代码

    当刷新(浏览器刷新)页面的时候,重置到首页(或其他页面)纯js的是window.onload()但是vue几乎不会用到这个,vue所有的是生命周期那么我们可以根据生命周期来实现这个beforeCrea ...

  3. jQuery页面加载初始化常用的三种方法

    当页面打开时我们需要执行一些操作,这个时候如果我们选择使用jquery的话,需要重写他的3中方法,自我感觉没什么区 别,看个人喜好了,第二种感觉比较简单明了: 第一种: 复制代码代码如下: <s ...

  4. 解决HTML加载时,外部js文件引用较多,影响页面打开速度问题

    解决HTML加载时,外部js文件引用较多,影响页面打开速度问题   通常HTML文件在浏览器中加载时,浏览器都会按照<script>元素在页面中出现的先后顺序,对它们依次加载,一旦加载的j ...

  5. 使用vue的mixins混入实现对正在编辑的页面离开时提示

    mixins.ts import { Vue, Component, Watch } from "vue-property-decorator" Component.registe ...

  6. CSS侧边栏宽度不动(更改页面宽度时),内容区宽度自适应

    一个页面,左栏是内容栏content,右栏是侧边栏sidebar.如何使侧边栏宽度不动(更改页面宽度时),内容区宽度自适应呢?为了保证内容区宽度自适应,先不设定其宽度,使其填充整个DIV区域,设定足够 ...

  7. vue单页面打包文件大?首次加载慢?按需加载?是你打开方式不对

    部署各vue项目,走了一遍坑.... vue单页面应用刷新404 找到nginx多网站配置文件:类似nginx/sites-available/www.baidu.com server { liste ...

  8. VUE路由新页面打开的方法总结

    平常做单页面的场景比较多,所以大部分的业务是在同一个页面进行跳转.要通过VUE路由使用新页面打开且传递参数,可以采用以下两个方法: 1.router-link的target <router-li ...

  9. vue常见问题处理 -- 页面刷新时,如何保持原有vuex中的state信息

    一.页面刷新时,如何保持原有vuex中的state信息 页面刷新后,原有的 vuex 中的 state 会发生改变,如果在页面刷新之前,可以将 state 信息保存,页面重新加载时,再将该值赋给 st ...

随机推荐

  1. 什么是内部类? Static Nested Class 和 Inner Class 的不同。

    什么是内部类? Static Nested Class 和 Inner Class 的不同.        内部类就是在一个类的内部定义的类,内部类中不能定义静态成员(静态成员不是对象的特性,只是为了 ...

  2. 《剑指offer》数组中出现一半次数的数字

    本题来自<剑指offer> 反转链表 题目: 思路: C++ Code: Python Code: 总结:

  3. Vue父子组件之间的相互通信

    组件是Vue知识体系中最重要的一部分之一,父子组件由于作用域的不同,无法直接对对方的数据进行操作.它们之间的数据传递都是通过中间介质进行的,父组件给子组件传值是通过props属性,而子组件给父组件传值 ...

  4. js编码解码 punyCode

    ;(function(w) { var PunycodeModule = function () { function IdnMapping() { this.utf16 = { decode: fu ...

  5. js 获取两个时间戳之间相隔多少天多少小时多少分多少秒

    <script> function getRemainderTime (startTime){ var s1 = new Date(startTime.replace(/-/g, &quo ...

  6. 关闭IIS开启自启

    关闭IIS开启自启 win+R输入services.msc 找到服务名称为World Wide Web Publishing Service 双击停止,右键禁用

  7. spring-aop 的注释用法

    一.书写增强有效代码 //切面注释@Aspectpublic class errorLogger { private static Logger logger = Logger.getLogger(e ...

  8. hdu4791-Alice's Print Service

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4791 题目解释:给你一组数据s1,p1,s2,p2...sn,pn,一个数字q,问你当要打印q张资料时 ...

  9. CodeForces 630G Challenge Pennants (组合数学)

    <题目链接> 题目大意: 有两种旗子,分别有5个和3个,将这些旗子分配给n个人,有多少中方法. 解题分析: 5面A旗子的发放方案为:$[1,1,1,1,1],[1,1,1,2],[1,2, ...

  10. SQL语句删除表中的字段只留下最新一行

    方法一 DELETE FROM A WHERE `name` in ( SELECT a.name FROM( SELECT name FROM A a GROUP BY name HAVING CO ...