热门IT资讯网

Android微信下JS报错:无对象

发表于:2024-11-26 作者:热门IT资讯网编辑
编辑最后更新 2024年11月26日,1.1.1 现象发布新版本到服务器上后,点击一个按钮总是不执行相应的操作,将控制台信息输出出来后发现提示信息说没有找到相应的对象。按钮的代码中调用了一个函数,这个函数在另外一个JS文件中,是新版本中增
1.1.1 现象

发布新版本到服务器上后,点击一个按钮总是不执行相应的操作,将控制台信息输出出来后发现提示信息说没有找到相应的对象。

按钮的代码中调用了一个函数,这个函数在另外一个JS文件中,是新版本中增加的。因为是在Android手机上,没法联机调试,于是通过alert逐步定位,发现新加的函数确实没有。再通过链接打开对应的JS文件查看,发现确实也没有新增的函数,可是检查服务器上的JS文件,其内容是正确的。

另外,这个问题只在Android手机上出现,在iPhone下没有这个问题。

1.1.2 原因

在网上搜索,发现是Android下使用了缓存的JS文件,因为在HTML的Header中没有设置相应meta参数,导致Android下没有更新JS文件。

1.1.3 解决

强制Android刷新JS/CSS文件有两种方法:

方法一,设定Meta参数,强制不使用缓存

这种方法适用于开发阶段,或开发、测试服务器上,对于生产环境不太适合,因为不使用缓存,终端用户的性能会受到影响。

方法二,为需要更新的CSS/JS文件链接后面增加版本号参数,这样Android客户端会认为是新的文件:

这种方法适用于生产环境。

0