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

网站域名费多少东营市造价信息网

网站域名费多少,东营市造价信息网,淘客网站建设教程,wordpress大前端dux-plusVue 项目在哪里加载「字典数据」最好 1. 主要需求理解 目标: 进入网站(用户访问系统)时,刷新并缓存字典数据,供后续页面或组件使用。 2. 实现方案比较 方案实现位置优势注意事项方案A全局入口 App.vue created()- 页…

Vue 项目在哪里加载「字典数据」最好

1. 主要需求理解

目标: 进入网站(用户访问系统)时,刷新并缓存字典数据,供后续页面或组件使用。


2. 实现方案比较

方案实现位置优势注意事项
方案A全局入口 App.vue created()- 页面加载前获取
- 所有页面可用
- 需处理加载状态(避免白屏)
- 一般结合 Vuex 存储
方案BVuex store 中 action + 初始化调用- 与状态管理一致
- 便于模块拆分
- 需要在 App.vue 或路由守卫调用一次
方案C路由守卫 (router.beforeEach)- 访问每个页面可触发刷新
- 适合动态字典
- 每次跳转均请求,增加接口压力
方案D单个业务页面 created()- 仅当前页面使用- 其他页面需要重复请求,不适合全局字典
方案E服务端渲染时预取(Nuxt、SSR)- 首屏即返回字典数据- 仅适用于 SSR 项目

3. 最佳推荐方案

方案 A+B 组合(最佳实践)

① 在 store/modules/dictionary.js 中创建模块

// store/modules/dictionary.js
const state = {dictData: {}
};const mutations = {setDictData(state, data) {state.dictData = data;}
};const actions = {async fetchDictData({ commit }) {const res = await api.getDictionary(); // 替换为你的APIcommit('setDictData', res.data);}
};export default {namespaced: true,state,mutations,actions
};

② 在 App.vue 中 created() 调用一次

// App.vue
created() {this.$store.dispatch('dictionary/fetchDictData');
}

这样做的好处:

  • 进入网站时只请求一次
  • 全局可用,后续无需再次请求
  • 与 Vuex 结构一致,维护简单

4. 方案 C 的使用场景

如果 字典数据会频繁更新,可改为:

// router/index.js
router.beforeEach(async (to, from, next) => {await store.dispatch('dictionary/fetchDictData');next();
});

但通常 不建议每次路由切换都刷新,除非数据实时性要求极高。


5. 进阶优化

  • 缓存策略: 使用 localStorage/sessionStorage 缓存,减少请求次数
  • 过期策略: 设置时间戳,超过 N 分钟重新请求
  • 接口合并: 如果多个字典接口,可改为批量接口一次返回所有字典

6. 总结

最佳位置:App.vue created() 中调用 Vuex action 初始化字典数据
结合 Vuex 统一管理,避免重复请求
如对实时性要求高,可在路由守卫刷新,但需注意接口压力

7.实例

src/App.vue 文件中,找到 created() 生命周期方法

<script>
export default {created() {this.getDict(); // 初始化获取字典数据},methods: {// 获取字典async getDict() {const response = await this.$apiRequest('get', '/api/dictionary/list'); // 统一脱敏为 /api/dictionary/listif (response.status === 200) {const dictData = response?.data?.data || [];this.$store.dispatch('saveDictData', dictData); // 保存到 Vuex}},},
};
</script>

文章转载自:

http://LyWD3Pox.fnwtq.cn
http://Hu96Uc5g.fnwtq.cn
http://8Src00U1.fnwtq.cn
http://ky7Cudqr.fnwtq.cn
http://hiYyUe8f.fnwtq.cn
http://4t88Qg2X.fnwtq.cn
http://RFJADnzl.fnwtq.cn
http://toKM1psX.fnwtq.cn
http://XS7DHiVF.fnwtq.cn
http://d2knyGxF.fnwtq.cn
http://nKC6GuIX.fnwtq.cn
http://6TjyQJHt.fnwtq.cn
http://OOhhxN9C.fnwtq.cn
http://uXrhL5hp.fnwtq.cn
http://j3bW2xw2.fnwtq.cn
http://a4Ttg6Kw.fnwtq.cn
http://teU7u4oS.fnwtq.cn
http://yaKyEger.fnwtq.cn
http://vcPFyNuT.fnwtq.cn
http://NnHAhRM1.fnwtq.cn
http://DVUFuYsx.fnwtq.cn
http://qp6BmOHp.fnwtq.cn
http://ue18FUXk.fnwtq.cn
http://v9qm9cQy.fnwtq.cn
http://9xuFUcYI.fnwtq.cn
http://EIs4J1hk.fnwtq.cn
http://bUUzXUMH.fnwtq.cn
http://moUKkILW.fnwtq.cn
http://uFoLSZLo.fnwtq.cn
http://XY5Wfkdr.fnwtq.cn
http://www.dtcms.com/wzjs/607086.html

相关文章:

  • 目前主流的网站开发语言如何建立营销型网站
  • 网站的域名在哪里看哈尔滨网站制作工具
  • 紫云网站建设app开发需要多少费用
  • 网站怎么做微信送红包活动wordpress自定义链接不能用
  • 教做甜品的网站徐州网站建设的特点
  • 爱站工具包的主要功能华为服务器
  • wordpress做企业网站街头小吃加盟网站建设
  • 淄博桓台学校网站建设哪家好宜兴建设公司网站
  • 第三方做农产品价格数据的网站百度做一个网站怎么做呢
  • 做网站必须用域名吗句容网站建设
  • 沂南网站建设泗洪企业网站建设
  • ai做的比较好的网站专业制作银行存单
  • 开发网站公司价格wordpress添加pdf
  • 网页设计网站的分析网站1996年推广
  • 备案期间网站能用吗wordpress修改页面标题显示不出来
  • 微信开发网站开发网站开发语言html
  • 网站做服务端单页面优化
  • 南宁建设工程质量网站秦皇岛市中医院
  • 企业设计网站wordpress 禁用插件
  • 中国建设银行网站显示未签约开天猫旗舰店网站建设
  • 平凉建设局官方网站怎么做招标公司网站
  • wordpress商城建站教程北京做兼职从哪个网站
  • 织梦网站栏目管理在线支付 网站模板
  • 如何建设国际网站首页考程序员需要什么条件
  • 营销型网站服务wordpress模板修改服务
  • cp网站开发是什么汝州市建设局网站
  • 企业网站建站企业大数据查询官网
  • 集团公司门户网站建设cms系统排行榜
  • 旅游品牌网站的建设视频网站建设流程
  • 什么云的网站开发平台网上卖货哪个平台比较好