追梦随想
追梦随想
  • 发布:2020-02-20 20:38
  • 更新:2020-03-05 20:37
  • 阅读:1682

让人蛋疼的报错提示能不能优化一下下,准确一点友好一点可以不

分类:uni-app
TypeError: undefined is not an object (evaluating 't._wrapper')

上面这个报错信息,第一反应就是代码某个地方写错了,然后一点一点找,一点一点注释、打印、删除,然后还不行,重启应用,重启IDE软件,卸载基座重新安装,还是不行,有一种想死的感觉!!!

后来去问百度,然后在评论区给了启发,找到了原因,这个提示是某个事件的执行函数未定义,这个错误提示根本不对,关键是这种事之前干过一回,没长记性,今天又遇到了,心情又崩溃了一天,找到原因后真想给自己两个耳刮子!!!

我其实只想说,官方能不能给个痛快的提示?准确一点点也好啊,你这八竿子打不着的错误,真的会把人逼疯啊。。。

2020-02-20 20:38 负责人:无 分享
已邀请:
追梦随想

追梦随想 (作者)

今天又白混一天。(#`㉨´)凸

DCloud_UNI_FXY

DCloud_UNI_FXY

贴一下导致该错误的具体代码用法

  • 追梦随想 (作者)

    就是html部分定义了一个点击事件,但是事件的执行函数忘记写了,在执行远程请求数据的时候,给data里面的变量赋值,报错信息就出现了,为此纳闷了好久。。。

    2020-02-20 21:07

  • DCloud_UNI_FXY

    回复 追梦随想: 运行到哪个平台,如果是模板里使用了methods中未定义的方法,那触发事件的时候,会报 is not a function,你贴一下你具体的代码吧

    2020-02-20 21:15

  • 追梦随想 (作者)

    回复 DCloud_UNI_FXY: 楼下贴了代码,你看下

    2020-02-20 21:57

追梦随想

追梦随想 (作者)

<template>  
    <view class="page-content" @click="again_request">  
        <view class="page-bg"></view>  
        <view class="content">  
            <view class="sign_calendar">{{sign_calendar}}</view>  
            <button class="mt10" type="warn" :disabled="disable_button" @click="submit_sign">{{button_title}}</button>  
            <view class="sign_info mt10">  
                <view class="card" :class="card_style">  
                    <view class="total"><text>{{total_count}}</text>天</view>  
                    <view class="title">累计签到</view>  
                </view>  
                <view class="card" :class="card_style">  
                    <view class="total"><text>{{sign_count}}</text>天</view>  
                    <view class="title">连续签到</view>  
                </view>  
                <view class="card" :class="card_style">  
                    <view class="total"><text>{{total_bonus}}</text>元</view>  
                    <view class="title">累计红包</view>  
                </view>  
            </view>  
        </view>  
    </view>  
</template>  

<script>  
export default {  
    onLoad:function(){  
        this.get_sign_info();  
    },  
    data() {  
        return {  
            connect_fail: false,  
            total_count: '0',   //累计签到天数  
            sign_count: '0',    //连续签到天数  
            total_bonus: '0.00',//红包总额  
            button_title: '立即签到',  
            disable_button: false,  
            card_style: ''  
        }  
    },  
    methods: {  
        //测试缺少的函数方法(解除注释就不报错了)  
        // again_request: function(){  
        //  if (this.connect_fail) {  
        //      this.connect_fail = false;  
        //      this.get_sign_info();  
        //  }  
        // },  
        //获取用户签到信息  
        get_sign_info: function(){  
            let _this = this;  
            uni.request({  
                url: 'https://uniapp.dcloud.io/api/request/request',    //测试而已,别无它用  
                success:function(){  
                    console.log(123);  
                    _this.total_count = 100;  
                }  
            })  
        },  
        submit_sign: function(){  

        }  
    }  
}  
</script>  

<style>  
.page-content {position: relative;}  
.page-bg {height: 50vh; background-image: linear-gradient(to bottom, #DD524D, rgba(245, 137, 104, 0));}  
.content {position: absolute; left: 4vw; top: 50vw; right: 4vw;}  
.today_date {display: flex; justify-content: center;}  

.sign_info {display: flex; justify-content: space-between;}  
.sign_info .card {width: 28vw; text-align: center; background-color: rgba(0, 0, 0, 0.1); padding: 10px 0; border-radius: 5px;}  
.sign_info .card.on {background-color: #DD524D;}  
.sign_info .card .total {color: rgba(0, 0, 0, 0.3);}  
.sign_info .card .total text {margin-right: 5px;}  
.sign_info .card.on .total {color: #FFF;}  
.sign_info .card .title {color: rgba(0, 0, 0, 0.3); margin-top: 5px;}  
.sign_info .card.on .title {color: #FFF;}  
</style>

代码如上,直接运行打开页面即可在控制台看到错误提示,跟下面的帖子一样的例子,希望改进下

TypeError: undefined is not an object (evaluating 't._wrapper')
@DCloud_UNI_FXY

DCloud_UNI_FXY

DCloud_UNI_FXY

1.运行至哪个平台
2.什么编译模式?

  1. 最好贴一下控制台完整日志

我这里简单测试,没有发现类似问题

  • 追梦随想 (作者)

    日志在楼下你看下

    2020-02-20 22:26

  • 追梦随想 (作者)

    安卓平台,V3编译模式,IDE是最新 Alpha 版的

    2020-02-20 22:27

追梦随想

追梦随想 (作者)

21:53:34.819 DONE Build complete. FILES:["app-service.js"]
21:53:34.827 项目 '100' 编译成功。
21:53:34.859 正在同步手机端程序文件...
21:53:37.506 3194 KB/s (8254421 bytes in 2.523s)
21:53:37.526 同步手机端程序文件完成
21:53:37.546 正在热刷新,如刷新失败,请点击控制台工具栏上的【重启应用图标】
21:53:38.087 Error: [JS Framework] Failed to receiveTasks, instance (1) is not available.
21:53:45.921 App Launch at App.vue:17
21:53:45.941 App Show at App.vue:31
21:53:50.605 [Number] 123 at pages\sign\sign.vue:54
21:53:50.665 TypeError: undefined is not an object (evaluating 't._wrapper')

日志也是这样啊,安卓平台,V3编译模式,IDE是最新 Alpha 版的

DCloud_uniAD_HDX

DCloud_uniAD_HDX

下版优化错误提示信息

Zsoner

Zsoner

我也出现这个问题,我的页面是点击按钮 显示modal ,页面上有两个以上modal

Zsoner

Zsoner

刚试了一下,同样的代码,在V3编译器下会报错,不选重新编译调试则不会报错

TypeError: undefined is not an object (evaluating 't._wrapper')

3***@qq.com

3***@qq.com

Undefined 人家说的很清楚了,对象或方法未定义。这个很好排查吧。如果代码堆成山那当我没说

  • 追梦随想 (作者)

    undefined is not an object 你告诉我怎么排查,好歹给个名称吧,哪个变量或方法未定义

    2020-03-03 17:22

DCloud_heavensoft

DCloud_heavensoft

请更新 2.6.3版,已经给出了更详细的报错信息

该问题目前已经被锁定, 无法添加新回复