记录帖子-开发过程中遇到的问题和感悟记录

记录帖子1:2023年08月25日结束开发

前端规范

1.关于计算属性

计算属性关联的变量不可以过多,同时要保证关联的变量在代码中的变换次数不可过多

例如这段代码的this.options内部数据变化过多,导致计算属性调用次数过多导致页面卡顿

2.关于自定义v-model

使用自定义v-model保证双向绑定的数据类型是一个基本数据类型,不使用v-model实现绑定一个对象类型的数据,对于对象类型应该使用的是props+emit的方式实现数据的双向流动。原因:业务迭代的时候,不好对数据进行拦截做其他操作。

问题记录

1.关于腾讯无界微前端的问题

a.关于tab切换渲染同一个页面,同时这个页面中含有无界子应用的的问题

问题描述:来回切换tab的时候,第二次切入原先打开的无界子页面空白。(此时的无界的name绑定为tab的id加一个常量字符串)

原因:切换页面时无界未被销毁,切回的时候方式冲突,

解决方案:生成随机无界name,只是一个零时方案。

2.关于页面开发布局和数据流动问题

页面做成流式布局,尽量不用使用嵌套布局,以便迭代的时候,数据好流动到各个组件。

拆掉一层布局,这样如果在这个页面上再加层 布局或者是在之中加一层布局就会很方便,代码举例

改方法内部有很多的组件,实际上可以提出来放到div中。

3.关于框架的使用问题

再使用框架的时候,尽量不要使用这个框架提供的api而是使用原生api实现。

原因:可能在那个版本使用的是最好的,但是对于迭代来说,可能会造成累赘。

问题描述:使用nuxt提供的asyncData,通过请求接口获取到数据在注入到vue的data里面。迭代需求,再原来的页面上增加侧栏nav,每次切换的时候,数据带入到原来的页面,差不多类似下图

这时候就会有个问题,侧栏通过请求接口获取到数据,会有一定的延时,同时如果获取到数据后再通过v-if渲染组件,由于原来的是通过async来获取到数据,数据会在create的时候就初始化,即vue的data渲染的时候赋值。这会导致传入的props无法再data之前获取,同时使用了大量的计算属性和vuex,倒是数据没传入就执行了计算属性和vuex的内容,导致报错。

此处临时解决方案:使用无界嵌入原页面作为子组件(过渡方案)

4.关于导航守卫无法拦截问题

nuxt项目,使用的是window.open打开的新页面,导致无法拦截,无法解决,最后使用浏览器原生api--beforeunload实现跳转拦截提示。

未完待更新.......

相关推荐
0思必得013 分钟前
[Web自动化] Selenium处理滚动条
前端·爬虫·python·selenium·自动化
Misnice15 分钟前
Webpack、Vite、Rsbuild区别
前端·webpack·node.js
青茶36016 分钟前
php怎么实现订单接口状态轮询(二)
前端·php·接口
大橙子额1 小时前
【解决报错】Cannot assign to read only property ‘exports‘ of object ‘#<Object>‘
前端·javascript·vue.js
爱喝白开水a3 小时前
前端AI自动化测试:brower-use调研让大模型帮你做网页交互与测试
前端·人工智能·大模型·prompt·交互·agent·rag
董世昌413 小时前
深度解析ES6 Set与Map:相同点、核心差异及实战选型
前端·javascript·es6
吃杠碰小鸡4 小时前
高中数学-数列-导数证明
前端·数学·算法
kingwebo'sZone4 小时前
C#使用Aspose.Words把 word转成图片
前端·c#·word
xjt_09014 小时前
基于 Vue 3 构建企业级 Web Components 组件库
前端·javascript·vue.js
我是伪码农4 小时前
Vue 2.3
前端·javascript·vue.js