使用了非H5端不支持的API,比如document、xmlhttp、cookie、window、location、navigator、localstorage、websql、indexdb、webgl等对象。如果你的代码没有直接使用这些,那很可能是引入的三方库使用了这些。如果是后者,去插件市场搜索替代方案。要知道非H5端的js是运行在一个独立的js core或v8下,并不是运行在浏览器里。
文档中显示是不支持document、window之类的api的,但是我在官方的android离线打包demo里看到这些代码,是使用了document、window的。
//取消浏览器的所有事件,使得active的样式在手机上正常生效
document.addEventListener('touchstart', function () {
return false;
}, true);
// 禁止选择
document.oncontextmenu = function () {
return false;
};
if (window.plus) {
plusReady();
} else {
document.addEventListener('plusready', plusReady, false);
}
我尝试了在uniapp项目里使用发现报错,确实是不能。但是我在打包出来的html文件里使用是可以的。 我想问下这个是什么原因?我想要监听plusready之类的事件,该如何写?
h***@163.com (作者)
感谢指导,我用的第三方的js,里面的事件都是下面这种方式派发的, 我在vue文件没办法用document.addListener,有其他办法能添加监听事件吗
2019-08-12 16:32
DCloud_heavensoft
回复 h***@163.com: vue里用不了,去插件市场找替代品吧。或者用HTML
2019-08-12 16:47
h***@163.com (作者)
回复 DCloud_heavensoft: 了解,感谢 我再想想办法
2019-08-12 18:21