解决vue生产环境,页面卡死的问题

 更新时间:2023年07月01日 10:11:02   作者:夏天爱劳动  
这篇文章主要介绍了解决vue生产环境,页面卡死的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

vue生产环境,页面卡死的解决

问题描述

开发环境没问题,本地连测试环境没问题,打包到测试环境,直接把页面整崩k,搞得接口请求啥都没问题,但是接口preview就是不返回,

解决过程

  • a.起初认为是后端打包得问题,但是进过分析和后台测试,基本排除
  • b.前端重新打包,问题复现,(可能是页面陷入死循环,造成网页渲染出现问题,导致preview没有返回值)
  • c.本地没有问题,本地连测试环境也没出现问题,基本排除有出现死循环的可能
  • d.最后发现echarts在初始化的时候会报错,最后将报错的代码删除掉。(本地也报错,但是未出现页面卡死的现象)

最后得出在项目开发中,任何一个错误都可能造成项目卡死和浏览器崩溃,所以我们需要严谨的开发项目,有错误必须解决。

vue项目页面卡死原因排查

问题描述

点击后台管理某一菜单发现直接卡死,没有其他报错信息,整个网页鼠标变为手指状态不能进行任何操作

问题排查

首先是通过注释代码发现问题是出在以下代码中

    <basic-container>
      <h4>教师指标数据</h4>
      <avue-crud ref="crud"
                 :data="tableData"
                 :table-loading="tableLoading"
                 :option="tableOption"
                 @refresh-change="refreshChange"
                 @search-change="searchChange">
        <template slot-scope="scope"
                  slot="menu">
          <el-button type="text"
                     icon="el-icon-view"
                     size="small"
                     @click="handleView(scope.row,scope.index)">查看
          </el-button>
        </template>
      </avue-crud>
    </basic-container>

查看日志输出

在这里插入图片描述

锁定到问题是数据展示的data 需要array 但是却拿到了Object

将数据展示方式tableData改为 table:[]数组类型进行展示即可

data:{
return :{
        tableData: []
]
}      
getList() {
        this.tableLoading = true;
        this.tableData=[];
        fetchList(this.listQuery).then(response => {
          console.log("------------------"+response.data.data)
          this.tableData.push(response.data.data) ;
          this.tableLoading = false
        })
      },

总结

这里有几个问题一个是avue 版本兼容的问题 貌似旧版本会兼容这种情况不会出现卡死的问题大佬修改框架后出现的这个问题另一个是返回值规范 如果使用表格 最好都返回list数组 不要返回单object类型导致出现类似

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 还在用vuex?来了解一下pinia

    还在用vuex?来了解一下pinia

    这篇文章主要为大家详细介绍了pinia,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-02-02
  • Vue2.0组件间数据传递示例

    Vue2.0组件间数据传递示例

    本篇文章主要介绍了Vue2.0组件间数据传递示例,组件间数据传递主要是父子组件之间传递,具有一定的参考价值,有兴趣的可以了解一下。
    2017-03-03
  • vue实现用户登录切换

    vue实现用户登录切换

    这篇文章主要为大家详细介绍了vue实现用户登录切换,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-04-04
  • webpack配置导致字体图标无法显示的解决方法

    webpack配置导致字体图标无法显示的解决方法

    下面小编就为大家分享一篇webpack配置导致字体图标无法显示的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • vue实现原理this.$message实例详解

    vue实现原理this.$message实例详解

    这篇文章主要介绍了vue实现原理this.$message实例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-03-03
  • vue element-ui读取pdf文件的方法

    vue element-ui读取pdf文件的方法

    这篇文章主要介绍了vue element-ui读取pdf文件的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-11-11
  • vue 验证码界面实现点击后标灰并设置div按钮不可点击状态

    vue 验证码界面实现点击后标灰并设置div按钮不可点击状态

    今天小编就为大家分享一篇vue 验证码界面实现点击后标灰并设置div按钮不可点击状态,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • Vue新玩具VueUse的具体用法

    Vue新玩具VueUse的具体用法

    VueUse 是一个基于 Composition API 的实用函数集合。本文就详细的介绍了VueUse的具体用法,具有一定的参考价值,感兴趣的可以了解一下
    2021-11-11
  • 基于cropper.js封装vue实现在线图片裁剪组件功能

    基于cropper.js封装vue实现在线图片裁剪组件功能

    这篇文章主要介绍了基于cropper.js封装vue实现在线图片裁剪组件功能,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2018-03-03
  • 解决vscode进行vue格式化,会自动补分号和双引号的问题

    解决vscode进行vue格式化,会自动补分号和双引号的问题

    这篇文章主要介绍了解决vscode进行vue格式化,会自动补分号和双引号的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10

最新评论