Error: Not Found:Page[2][-1,2,14] at view.umd.min.js:1
请问真机调试的时候,发出这个错误,是什么问题?怎么解决?

- 发布:2020-11-03 16:53
- 更新:2022-06-15 22:42
- 阅读:12129

9***@qq.com - 漫画
这个问题是页面路由跳转的时候,数据正在加载 但是没有完成方法里面的代码造成的。 目测是这样 其实这个问题不会造成很大的出错,如果使用的是图片懒加在的话 导致图片不显示的问题

经过测试,发现了问题
举例重现下这个报错 使用uview的u-button的 ripple属性, 设为true, 这是个波纹动画的点击效果,接着让点击这个u-button直接navTo另一个页面, 波纹动画还要执行 但页面主体没了, 故报错;
如果设置成延迟再navTo 就不报错了
-
-
在u-button组件修改click方法和getWaveQuery:
// 按钮点击
click(e) {
// 进行节流控制,每this.throttle毫秒内,只在开始处执行
this.$u.throttle(() => {
// 如果按钮时disabled和loading状态,不触发水波纹效果
if (this.loading === true || this.disabled === true) return;
// 是否开启水波纹效果
if (this.ripple) {
// 每次点击时,移除上一次的类,再次添加,才能触发动画效果
this.waveActive = false;
this.$nextTick(function() {
this.getWaveQuery(e);
});
}
else
{
this.$emit('click', e);
}
}, this.throttleTime);
},
// 查询按钮的节点信息
getWaveQuery(e) {
this.getElQuery().then(res => {
// 查询返回的是一个数组节点
let data = res[0];
// 查询不到节点信息,不操作
if (!data.width || !data.width) return;
// 水波纹的最终形态是一个正方形(通过border-radius让其变为一个圆形),这里要保证正方形的边长等于按钮的最长边
// 最终的方形(变换后的圆形)才能覆盖整个按钮
data.targetWidth = data.height > data.width ? data.height : data.width;
if (!data.targetWidth) return;
this.fields = data;
let touchesX = '',
touchesY = '';
// #ifdef MP-BAIDU
touchesX = e.changedTouches[0].clientX;
touchesY = e.changedTouches[0].clientY;
// #endif
// #ifdef MP-ALIPAY
touchesX = e.detail.clientX;
touchesY = e.detail.clientY;
// #endif
// #ifndef MP-BAIDU || MP-ALIPAY
touchesX = e.touches[0].clientX;
touchesY = e.touches[0].clientY;
// #endif
// 获取触摸点相对于按钮上边和左边的x和y坐标,原理是通过屏幕的触摸点(touchesY),减去按钮的上边界data.top
// 但是由于transform-origin
默认是center,所以这里再减去半径才是水波纹view应该的位置
// 总的来说,就是把水波纹的矩形(变换后的圆形)的中心点,移动到我们的触摸点位置
this.rippleTop = touchesY - data.top - data.targetWidth / 2;
this.rippleLeft = touchesX - data.left - data.targetWidth / 2;
this.$nextTick(() => {
this.waveActive = true;
this.$emit('click', e);
});
});
},2022-12-03 21:34

我也出现这个问题了,报错是偶然性的,排错都不好排,每次出错都会概率性阻断我的代码。比较烦
用了一个比较骚的办法,
在生命周期 mounted 的函数里或是其他业务场景里,凡是会被阻断的代码或者会导致错乱的代码都写在 setTimeout 里 ,
用这个方法帮我解决了 NoticeBar 吸顶后错位问题和概率性阻断我代码的问题,依然还是会报那个错误,但是已经不会阻断我的代码了

1***@qq.com - 学习 uts
我的解决方案是找到有问题的组件,给组件设置一个v-if,数据加载出来后设置一个延时函数,【目测是数据没有加载完成组件就开始渲染,然后没有数据导致的】希望有更好的解决方案
chihiro_yy
您好,我现在就是遇到这种问题,图片不显示,想问一下这种可以怎么样解决呢
2021-04-30 10:36