后来项目上线,h5项目是嵌到客户的app里面,客户的app做了404文件的处理,导致在app打开我们的项目,出现报错,但是报错页面也是偶然出现,有点难复现。
由于h5项目也要有微信小程序版本,任务紧,部分的功能使用web-view嵌入h5页面。用小程序打开h5项目时,vconsole-webpack-plugin插件的控制台总是打印没有找到B.js文件。用app去打开h5页面则控制台没有报错。重新将B.js文件放到static目录下,PC调试,控制台还是报Unexpected token '<'的错误。搜了一下说static里面文件引用要用绝对路径。如
发布到测试,再用小程序打开H5页面,发现还是报错,如
将引入方式改成最开始的引入方式,发布后再用小程序打开h5页面,发现报错如下
根据报错信息,发现路径少了static目录,应该是https:/fo****p/static/eruda-1.2.2.min.js。将引入方式改为下图。
发布后,再用微信小程序打开的h5页面发现没有报错了,用PC调试的控制台也没有报错。这路径是我没有细想。是我想当然,相对路径是当前相对引入文件的路径。A.js是项目首页html通过下图方式引入。
而A.js通过下图方式引入B.js文件。
所以script中src的相对路径理应相对的是引入A.js文件的html文件,而不是相对A.js文件,只有A.js被html引入后才有window.document,而且window.document是html内的。对于public建一个eruda目录还是报没有找到,是因为public下的eruda目录的内容并不会在“npm run build”自动加到打完的包里,需要每次打完包后将eruda复制到打完包里或者配置webpack将eruda目录加到包里,而本地调试没有经过打包时可以正确找到B.js文件。我忘记复制eruda目录,webpack也没有配置。不知道为什么发布的项目,在app内通过vconsole-webpack-plugin插件没有看到错误打印信息,而用小程序去打开h5页面vconsole-webpack-plugin插件控制台就会报错。
script 标签也是标签啊。你可以用document.createElement 去创建script标签。
然后添加到head头里就看一了
document.getElementsByTagName("head")[0].appendChild(document.createElement("script"))
Scripts的小组件怎么添加到桌面,在手机主屏幕,右滑到最左侧,点击下面的编辑按钮,进入小组件添加页面,或者长按主屏幕空白处进入添加界面。点击左上角的添加按钮,找到万能小组件并点击。
添加万能小组件后选择喜欢的组件样式,点击添加小组件即可将喜欢的组件添加到桌面。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)