后来项目上线,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插件控制台就会报错。
方法步骤如下:
1、工具需求
(1)TypeScript
2、利用TypeScript开发微信小程序需要4个核心文件如下
(1)App:代码整个应用程序的抽象对象,可以设置全局的方法和变量
(2)Page: 页面抽象对象,承载页面业务逻辑
(3)WXML: 页面的结构,相当于html
(4)JSON: 配置文件
(5)WXSS: 页面的样式,相当于css
3、然后由于目前腾讯没有小程序的TypeScript版本的API,所以OneCode team针对目前腾讯放出的所有的小程序JavaScript API开发了一个TypeScript版本的API类型定义文件 wxAPI.d.ts,如图。
(1)最后只需要在程序中引用该文件,如果是使用Visual Studio来开发的话,就能有代码提示了
1、小程序前端语言采用了 JSON WXML WXSS JS相当与就是 HTML5+CSS+JavaScript。
2、首先需要一个javascript文件或者html文件下的script标签。
3、引入jquery。
4、定义一个json格式的字符串。
5、转换成json格式后输出。
6、打开浏览器,右键->属性,访问这个html就可以看到输出的结果了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)