解读Vue.js应用的四种AJAX请求数据模式

2023-01-22 0 216

【IT168控制技术】假如你去查问三个Vue.js开发人员”在插件中采用AJAX的最差形式是甚么?”因此,你可能会赢得相同的意见建议。即使Vue尽管没提供更多同时实现AJAX的非官方形式,但有很多相同的程序语言可以被有效地采用。因此开发人员能依照另一方面情形展开推论,优先选择两个或是数个来采用。

责任编辑将向他们展现呵呵在Vue插件中同时实现AJAX的地方性,当中五种方式他们单厢譬如说,展开异同说明:

1. Root instance.

2. Components.

3. Vuex actions.

4. Route navigation guards.

1.Root instance

透过此种构架,开发人员能从Root instance收到大部份AJAX允诺,并储存大部份状况。假如任何人子模块须要统计数据,都能将它做为props浏览留下来;假如子模块须要创下统计数据,则能采用自订该事件来提示信息Root instance允诺。

例:

解读Vue.js应用的四种AJAX请求数据模式

优点

将大部份的AJAX逻辑和统计数据保存在两个地方性,保持模块足够简单,开发人员能更加专注正在报告上。

缺点

随着插件的扩展,须要大量的道具和自订该事件支撑。

2.模块

透过这个构架,模块负责管理自己的AJAX允诺和独立状态。实际上,开发人员可能须要创建几个 “container” 模块来管理 “presentational”模块的本地组统计数据。

例如,filter-list可能是两个包装了filter-input和filter-reset的 “container” 模块, filter-list将包含AJAX逻辑,并将管理该组中大部份模块的统计数据,透过 props 和 events展开通信。

为了使这个构架更容易同时实现,他们可以把任何人AJAX逻辑抽象成两个 mixin,然后采用 mixin 模块来同时实现AJAX。

解读Vue.js应用的四种AJAX请求数据模式

与其他模块或同组模块之间不易交流统计数据;模块最后可能会出现众多重复功能。

3. Vuex Actions

透过此种构架,开发人员能在Vuex商店中管理state和AJAX逻辑。模块能透过调度动作来允诺新的统计数据。

在同时实现这个商业模式的时候,最好能在action中返回promise,这样开发人员就能对AJAX允诺的解析作出反应,比如隐藏加载微调,重新启用按钮等等。

解读Vue.js应用的四种AJAX请求数据模式

我个人很喜欢这个构架,即使它很好地解耦了状况和表示逻辑,同时也是开发人员采用VueX的重要理由。

拥有大部份根模块构架的优点,而不须要 props 和自订该事件。

增加了Vuex开销。

4. Route Navigation Guards

大部份统计数据。

同时实现这个有两个巧妙方式是在服务器上为每个页面创建端点,例如与插件中的路由名称相匹配的页面(例如/about,/contact等)。然后同时实现两个通用beforerouteenter hook 将合并大部份统计数据属性页面模块的统计数据:

解读Vue.js应用的四种AJAX请求数据模式

使UI更易于预测。

总体上比较慢,即使在所有统计数据准备好之前页面无法呈现,帮助文档比较少。

服务器将第一次Ajax调用呈现到页面中

在初始页面加载时采用AJAX检索插件状况是不可取的,即使它须要额外往返服务器,这将延迟插件的渲染。相反,他们能将初始插件状况注入到HTML页面头部的内联脚本中,以便在插件须要时立即将其做为全局变量采用,AJAX能更适当地用于后续的统计数据抓取。

举报/反馈

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务