第一次写小程序,也是公司之前没有小程序,让我来写下,遇到了不少坑,记录下来。这是我遇到的问题或者说我写代码的经历吧,目前小程序还不完善,所以就有空的时候编辑一下。 

1.账号以及功能的开通

        我写的代码发布了微信、支付宝、百度,所以用了三个账号,注意(如果要写的小程序功能简单可以用自己的账号直接开发,不然就需要公司开通企业账号,然后让老板把你拉为开发人员),(支付宝要注意下,不能入驻开放平台,不然老板那添加不了你),我就是入驻过,联系的那边来解除。

uniap 微信开发工具 uniapp小程序开发_微信

        如果小程序有支付之类的功能,需要开通相关功能,这是老板那边开通下,生成调支付需要的私钥之类的(各个小程序需要的不相同)。

         用到了vsCode、百度开发工具、支付宝的小程序开发者工具、微信开发者工具。

2.添加域名

        请求地址需要添加到服务器配置,即合法域名,在开发设置中添加,注意需要https开头的,不然请求发送不了。

3.登录状态问题

        登录后保存登录信息,因为小程序不和浏览器一样,不会自动保存token,需要把登录后返回的Set-Cookie保存下来,作为请求头的Cooke,注意百度和微信的Set-Cookie有大小写区别,可以打一下结果查看,支付宝不需要设置。

4.审核问题

        发布小程序,需要审核通过才能上线,具体规范看各家小程序审核规则,百度这边的审核我是退回了好些次,按照规范来就没问题。

5.支付宝小程序

         v-show无效,要使用v-if。

        image标签要设置mode,下图是mode有效值,不设置图片会压缩。

uniap 微信开发工具 uniapp小程序开发_微信_02

        

 6.微信小程序

        button标签type值是primary时背景颜色是绿色,注意下。

7.其他

        日期函数,参考使用

//日期格式
		function formatDate2(str, type){
                //str时间,type输出类型,不写是年-月-日
			    var oDate = new Date(str),
			        oYear = oDate.getFullYear(),
			        oMonth = oDate.getMonth() + 1,
			        oDay = oDate.getDate(),
			        oHour = oDate.getHours();
			    var oMin = oDate.getMinutes(),
			        oSen = oDate.getSeconds();
			    oMonth = oMonth >= 10 ? oMonth : '0' + oMonth;
			    // oDay = oDay >= 10 ? oDay : '0'+oDay;
			    oHour = oHour >= 10 ? oHour : '0' + oHour;
			    oMin = oMin >= 10 ? oMin : '0' + oMin;
			    oDay = oDay >= 10 ? oDay : '0' + oDay;
			    oSen = oSen >= 10 ? oSen : '0' + oSen;
			    var oTime = oYear + '-' + oMonth + '-' + oDay; // 最后拼接时间 年-月-日
			    if (type && type == 2) {
			        return oYear + '-' + oMonth + '-' + oDay + ' ' + oHour + ':' + oMin // 最后拼接时间 年-月-日 时:分
			    }
				if (type && type == 11) {
				    return oYear + '-' + oMonth + '-' + oDay + ' ' + oHour + ':' + oMin+ ':' + oSen  // 最后拼接时间 年-月-日 时:分:秒
				}
			    return oTime;
			}

        触底刷新

        pages.json中要触底刷新的那个页面enablePullDownRefresh设置成true,函数写在页面生命周期onReachBottom中。