使用 uniapp 开发微信小程序遇到的坑
0. 每次修改代码时,都会触发微信开发工具重新编译
终极大坑,暂未找到解决方案
1. input 无法聚焦问题
问题:在小程序开发工具中,input 会突然无法聚焦,重启也不行。但是真机调试可以正常聚焦。
解决办法:按一下键盘 tab键 就解决了。
2. v-model 双向数据绑定问题
问题:uniapp 中使用 vue2 开发时,自定义组件进行双向数据绑定失败。
解决办法:props使用value,event 使用 input
emit: {
prop: 'value',
event: 'input'
}
3. 读取不到在 package.json 中声明的环境变量
问题:在 package.json
中声明了环境变量,但是在项目编译运行时却取不到值。如下方配置例子中,使用 process.env.VUE_APP_BASE_API
取到的值是 undefined
。
{
"uni-app": {
"scripts": {
"weixin-test": {
"title": "weixin-test",
"env": {
"NODE_ENV": "development",
"UNI_PLATFORM": "mp-weixin",
"VUE_APP_BASE_API": "http://xxx.xx.xx.xx/apis",
},
"define": {
"MP-WEIXIN": true
}
}
}
}
}
解决方案:在运行时,要选择与 package.js
配置中相同的命令 weixin-test
,而不是使用 “运行到小程序模拟器 -> 微信开发者工具”。运行前者能取到自定义环境变量,后者不行。
ps:如果打开“运行”菜单没有出现自定义的命令,那么就先打开package.json
文件,或许就出现了。