最近接手了一个老项目,uni-app开发的小程序,安装依赖的之后使用idea 可以编译到微信开发者工具报错:
1: app.js错误:TypeError: Function.prototype.apply was called on WeakMap.prototype.get, which is a string and not a function。
这个问题查了好久,最后就是确定是一个依赖qs 的版本不兼容,
执行:
2: 解决上述问题,在hbuilder 运行之后显示node-sass版本问题
Node Sass could not find a binding for your current environment: OS X 64-bit with Node.js 8.x
此问题问题出在HBuild有个内置的node,HBuild有个内置的node是v8,开发时依赖的node是高版本的,打包发布的时候会使用HBuild内置的node,所以是会报错的。所以我们告诉HBuild使用我们本机的node即可。打开终端,依次执行下面代码:
cd /Applications/HBuilderX.app/Contents/HBuilderX/plugins/node
mv node node-v8
ln -s /usr/local/bin/node /Applications/HBuilderX.app/Contents/HBuilderX/plugins/node/node
重新安装打包就可以正常编译了。
有话要说