2018/5/22 0:00:00
泉源:不详
作者:未知
这篇文章针对微信商城小程序开发时经常遇到的问题,,这篇说一下我们在此次开发商城类的小程序时遇到的一些需要注重的小问题!

⒈收货地点
这个问题,,想起来就醉的不可!在最先静态结构的时间,,费了泰半天劲,,把整个选择地点,,建设地点(地图选址),,重新编辑修改地点,,删除地点的页面都写好,,然后在手机预览。。。。点一下选择收货地点,,蹦出来两套页面。。。。∫惶拙褪俏倚吹模硪惶资……
当初是死活也没想到小程序自带的 wx.chooseAdress 是直接挪用微信底层的要领的,,并且所有功效应有尽有。。。。真是欲哭无泪。。。。。。。。。。。。
剖析下爆发这种事情的原因:首先刚最先接触小程序,,对一些要领在不相识的情形下就最先入手写代码,,也算是个大忌了;;其次这个功效在较低版本的开发者工具上面是预览不出该效果的,,只能在手机预览;;再次臣妾着实是没想到啊。。。。
就当是个教训了,,在此提醒列位新手一定要避开这个坑!
⒉小程序最多只能跳5栈
在开发小程序前一定要熟知营业流程,,只管把跳转页面控制在5栈之内。。。。详情参考 API 。。。。
若是遇到一些较量重大的营业流程,,无法控制在5栈之内,,请参考某大神的系列文章
⒊页面传值
这个较量简朴些,,用法跟html+javascript类似。。。。要领有多种,,我只说我用到的两种:通过链接传值和外地存储传值!
链接传值:
wxml 代码
-
<navigator url="../orderForm/orderForm?form_id=1">
在吸收页面的 js 中写
-
onLoad:function(options){
-
this.setData({
-
Form_id:options.form_id
-
})
-
}
这样就吸收到传过来的值了。。。。
外地存储传值: 传值页面的 js 中写
-
// 把选中的商品 id(cartIdString)放入外地存储 供支付页面使用
-
wx.setStorage({
-
key: 'cartIdString',
-
data: cartIdString,
-
success:function(res){
-
console.log('sucess')
-
}
-
})
-
// 把选中的商品 总价 放入外地存储 供支付页面使用
-
wx.setStorage({
-
key: 'total',
-
data: that.data.total,
-
success: function (res) {
-
console.log('sucess')
-
}
-
})
吸收页面的 js 中写
-
onReady:function(e){
-
var that = this;
-
// 给后台返回购物车页面中被选中商品的 id
-
wx.getStorage({
-
key: 'cartIdString',
-
success: function (res) {
-
console.log(res.data)
-
}
-
})
-
// 返回购物车页面中被选中商品的 总价
-
wx.getStorage({
-
key: 'total',
-
success: function (res) {
-
that.setData({
-
total: res.data
-
})
-
}
-
})
⒋request请求数目 整个小程序在运行时,,同时保存的 request 请求数目限制在5个。。。。解决步伐是在页面出栈时将该页面的所有 request 请谴责部销毁。。。。 先给每一个 request 请求赋给一个变量,,然后在 onUnload 事务中用 requestTask.abort() 要领将其销毁。。。。
js 代码
-
onLoad: function () {
-
var that = this;
-
var a = wx.request({
-
url: 'http://192.168.200.146:8080/trwl/xcx/selcar',
-
method: 'GET',
-
dataType: 'json',
-
success: function (res) {
-
that.setData({
-
carts:res.data
-
})
-
that.sum()
-
},
-
fail: function (res) { },
-
complete: function (res) { },
-
})
-
},
-
//将 request 举行销毁
-
onUnload: function () {
-
requestTask.abort();
-
a.abort();
-
}
5.往后台传求组时不可直接以Array的名堂传,,需要将其转换成字符串名堂 代码如下:
-
var cartIdArray = [];
-
var cartIdString = '';
-
var carts = this.data.carts;
-
for(var i=0;i<carts.length;i++){
-
if(carts[i].ch){
-
cartIdArray.push(this.data.carts[i].cartId)
-
}
-
}
-
for (var i = 0; i < cartIdArray.length; i++) {
-
cartIdString += cartIdArray[i] + ",";
-
}
【本站声明】
1、本站文章中所选用的图片及文字泉源于网络以及用户投稿,,由于未联系到知识产权人或未发明有关知识产权的挂号,,若有知识产权人并不肯意我们使用,,若是有侵权请连忙联系。。。。
2、本网站差池文章中所涉及的内容真实性、准确性、可靠性认真,,仅系客观性形貌,,如您需要相识该类商品/服务详细的资讯,,请您直接与该类商品/服务的提供者联系。。。。
KESION pp电子软件
KESION pp电子软件是海内领先的在线教育软件及私域社交电商软件服务提供商,,恒久专注于为企业提供在线教育软件及社交电商SaaS平台解决方案。。。。
公司焦点产品云开店SaaS社交电商服务平台、在线教育SaaS服务平台、教育企业数字化SaaS云平台、企微营销助手、私有化自力安排品牌网校和在线教育咨询等。。。。KESION 一直通过手艺立异,,提供产品和服务,,助力企业向数字化转型,,通过科技驱动商业刷新,,让商业变得更智慧!