用uni app进行开发,生成dist文件到微信开发者工具再部署云函数的方式。
平时做法:因云函数要用到一个node-xlsx组件,在微信开发者工具选中云函数文件夹,右键“在终端中打开”后安装npm install node-xlsx --save, 接着“上传并部署”, 可以正常使用云函数。
平时遇到的不便:但下次打开uni-app及运行到微信开发者工具后,云函数文件夹下的node_modules、package.json、package-lock.json等会自动清除,这应该是uni-app启动运行会先删除dist及其内容然后重新生成的缘故,我每次都在微信开发者工具的云函数文件夹下重新打开终端安装node-xlsx, 也可以用。
遇到真正的问题:也不知是哪次,我直接保存上次生成的node-modules等文件,再部署云函数,但运行程序调用云函数就一直报Cannot find module 'wx-server-sdk'的错误,真是奇怪了,以前用得好好的,怎么就不行了?查网上的原因说是要安装wx-server-sdk, 可我以前也没有需要这样安装可以用呀,我还是照作了,在cmd或是微信开发者工具的终端运行npm install --save wx-server-sdk@latest, 但结果不行,依然是缺少wx-server-sdk.
问题发现:后来我发现云函数文件夹下少了package.json, 可能是这个原因,运行npm init, 或是将以前保存的package.json恢复到这个位置,再部署、调用果然可以了。
问题解决:而且我试了将微信开发者工具云函数下的这些依赖文件(包括package.json、package-lock.json)复制到uni-app对应的云函数文件夹下,下次打开也会有了,不用每次安装依赖了。
uni-app使用iconfont字体
2021-05-08下载到本地发现解压后的文件少了iconfont.eof、iconfont.svg等文件,然后运行报错。我以前的方式是在main.js全局引入后再将解压文件(除demo文件外)大部分复制到static/iconfont目录下就可用了,但这次就不行了。
看了一些网友的方法,一般复制iconfont.css与iconfont.ttf文件就行了,其他不用复制,如果报错,则打开iconfont.css中删除报错文件src对应的url引用就可以了。
不过有一点要注意,先前多复制的文件要在\unpackage\dist\dev\mp-weixin\static\iconfont路径下手工删除才行,先前我将iconfont.js这样的文件也复制了,在开发者工具正常显示,但上传就不正常了,原来就是残留的iconfont.js文件导致,删除后再上传预览就可以了
网友评论