小程序填坑

1,page A navigete to Page B,在pageB编辑了数据,须要把数据传回到pageA,也就是把当前页的data数据赋值给上一页,不用url的option传参,有一个更简单的方法:html

let pages = getCurrentPages(); //当前页面
let prevPage = pages[pages.length - 2]; //上一页面
let currentData = {"name":testName};
prevPage.setData(retData); //直接给上移页面赋值
wx.navigateBack({
delta: 1
}); //后面要用这个进行返回;不能用navigateTo,否则数据会丢失json

 


2,小程序wxml文件,include报错:小程序

Included path `xxxxxx ` not found from 'xxxxxxxx'
提现流程分员工端和客户端,页面长的如出一辙,而后我就在后面的wxml文件里include以前的wxml文件,可是这个时候调试器出现了这么一个提示:
./pages/shopping_mall/fenxiao/submit_detail.wxml:include:-1:-1: Included path `/pages/sales/achievement/submit_detail.wxml` not found from `./pages/shopping_mall/fenxiao/submit_detail.wxml`.app


我以前用的是相对地址,后来改为了绝对地址,仍是有问题(因此不是地址的问题!!)。用了以前include的一个页面地址,页面出现了!而后对比两个页面地址,发现能够用的地址在app.json中是在最外层的,如今报错的地址在subPackages里!(重点来了!)
而后,就去查了小程序API,发现这个东西是所谓的分包,官方地址:
https://developers.weixin.qq.com/miniprogram/dev/framework/subpackages.html
在使用分包里,有一个引用原则:ui

也就是不能跨包进行引用文件。虽然这里没有直接说include,可是require都不能用了,include确定也是不能用的。
为了验证个人说法,我把员工端页面放到了app.json最外层,也就是从分包里拿出来,而后再去include。果不其然。。。页面能够正常引用。url


3,输入框容许输入小数点,可是小数点后最多输入两位小数spa


解题思路:
1,有一个属性,能够控制输入框的输入长度:maxlength;
2,把关注点放到输入完小数点后的第二位,而不是第三位。3d

解决方案:
a, 判断是否有小数点;
b,小数点后是否是已经出现了两位小数,就是比较字符串的长度和indexOf(".")+3是否是相等;
c, 若是相等,设置该输入框的maxlength为字符串的长度。
tips:记得要实时恢复manlength。调试

其实这个解决方案最主要就是依靠动态控制maxlength的值,来实现不能继续输入的效果。
不能继续输入,可是input又没有失焦,也没有disabled掉。xml


4,wx.redirectTo一直报错,提示fail to redirectTo/navigateTo page"xxxxxxx" is not found;可是该页面已经在app.json配置过了。正常访问也没有问题。

那么问题在哪呢??仔细看url最后,不带参数的话,?前面应该不带/的。。。wx.redirectTo({ url: "/pages/shopping_mall/orderdetail/orderdetail/?activityId=" + atyId + "&goodsId=" + goodsId + "&relationId=" + reid + "&buyType=0" + "&isShowPay=" + true, })因此把/删除就行了。。。。

相关文章
相关标签/搜索