Commit 3ac18b99 authored by 不吃草的咩's avatar 不吃草的咩

微信支付,,,

parent 83582146
...@@ -14,7 +14,7 @@ export const colorUISdk = new ColorUISdk({ ...@@ -14,7 +14,7 @@ export const colorUISdk = new ColorUISdk({
dev: { dev: {
// url: 'http://101.42.222.235:8050/' // url: 'http://101.42.222.235:8050/'
// url:'http://jbzhang.censoft.com.cn/' // url:'http://jbzhang.censoft.com.cn/'
url: 'http://192.168.15.249:8010/' url: 'http://192.168.14.79:8010/'
}, },
//本地环境 //本地环境
host: { host: {
......
//图片上传请求 //图片上传请求
const requestImg = (promise, loading = false, config) => { const requestImg = (promise, loading = false, config) => {
return new Promise( (resolve, reject) => { return new Promise( (resolve, reject) => {
console.log( config.api[config.env].url + promise.url);
console.log(config.api.filePath);
console.log(promise.filePath);
if (['produce','dev','host'].includes(config.env)) { if (['produce','dev','host'].includes(config.env)) {
if (loading) { if (loading) {
wx.showLoading({ wx.showLoading({
...@@ -11,7 +8,6 @@ const requestImg = (promise, loading = false, config) => { ...@@ -11,7 +8,6 @@ const requestImg = (promise, loading = false, config) => {
mask: true mask: true
}) })
} }
wx.uploadFile({ wx.uploadFile({
url: config.api[config.env].url + promise.url, url: config.api[config.env].url + promise.url,
header: promise.header || config.api.header, header: promise.header || config.api.header,
......
...@@ -2,5 +2,18 @@ ...@@ -2,5 +2,18 @@
<ui-navbar backtext="返回" isCenter> <ui-navbar backtext="返回" isCenter>
<text slot="center">{{jgTitle}}</text> <text slot="center">{{jgTitle}}</text>
</ui-navbar> </ui-navbar>
<view class="box">
<view class="title"><text>中国通信企业协会介绍</text></view>
<view class="detail"><text>公司简介</text></view>
<view class="wen"><text> 中国通信企业协会是经民政部核准注册登记,由信息通信行业基础运营、信息服务、设备制造、工程建设、网络运维、网络安全等通信产业相关的企业、事业单位和个人自愿组成的全国性、行业性、非营利的社团组织。成立于1990年12月,原名中国邮电企业管理协会,2001年5月更名为中国通信企业协会(简称中国通信企协)。中国通信企业协会理事会由全国有关通信部门的领导、企业家、专家和学者组成,现有副会长21名,常务理事71名,理事228名。
  协会团体会员单位1100余家。会员单位中,基础运营企业约占17%,设备制造企业约占3%,通信工程建设企业约占15%,通信网络运维企业约占30%,增值服务企业约占13%,虚拟运营企业约占4%,网络安全企业约占9%,光电缆企业约占5%,其他约占4%。
</text></view>
<view class="detail"><text>业务范围</text></view>
<view class="wen"><text> 中国通信企业协会部分职能,根据国家有关通信和信息化发展的政策和要求,结合通信发展实际,研究分析通信相关行业发展状况和趋势,总结和探索通信行业经营、管理、改革、服务和发展的新经验、新思路、新途径,为政府主管部门和企业提供建议和参考。
  研究制订通信行业团体标准等相关行业标准,并组织宣贯,经政府部门批准或委托,积极稳妥地开展相关领域能力水平评定。
通信行业、企业咨询服务。承接企业委托课题研究,以及调查、评估、管理咨询;举办通信发展论坛、研讨会,组织对通信业发展的研究分析;为企业提供通信质量、先进技术型企业评估、知识产权运用标杆、中国驰名商标等相关咨询服务。
  推动通信企业改善产品质量,提高服务水平,维护消费者的合法权益。根据政府授权,承担通信服务质量有关工作。
  组织开展通信行业技术、业务、管理、法规等培训工作。
</text></view>
</view>
</ui-sys> </ui-sys>
/* pages/qyDetail/qyDetail.wxss */ /* pages/qyDetail/qyDetail.wxss */
\ No newline at end of file .box{
width: 98%;
margin: 0 auto;
background-color: #ffffff;
box-sizing: border-box;
padding: 10rpx;
}
.box .title {
width: 100%;
height: 80rpx;
line-height: 80rpx;
text-align: center;
}
.box .title text{
font-size: 32rpx;
font-weight: bold;
/* color: ; */
}
.box .detail {
width: 100%;
text-align: center;
}
.box .detail text{
font-size: 28rpx;
font-weight: bold;
/* color: ; */
}
.wen{
font-size: 26rpx;
line-height: 2;
text-indent: 2em;
box-sizing: border-box;
padding: 16rpx 0;
}
\ No newline at end of file
...@@ -19,6 +19,7 @@ Page({ ...@@ -19,6 +19,7 @@ Page({
isShowZige:false, isShowZige:false,
isShowPeixun:false, isShowPeixun:false,
fromDate:{ fromDate:{
id:'',
username:'', //姓名 username:'', //姓名
gender:'', //性别 gender:'', //性别
card:'', //身份证号 card:'', //身份证号
...@@ -153,43 +154,43 @@ Page({ ...@@ -153,43 +154,43 @@ Page({
}, },
nextCard(){ nextCard(){
//bug问题 重新赋值 //bug问题 重新赋值
// this.setData({ this.setData({
// ["fromDate.username"]:this.data.username, ["fromDate.username"]:this.data.username,
// ["fromDate.card"]:this.data.card, ["fromDate.card"]:this.data.card,
// ["fromDate.phone"]:this.data.phone, ["fromDate.phone"]:this.data.phone,
// ["fromDate.company"]:this.data.company, ["fromDate.company"]:this.data.company,
// ["fromDate.beizhu"]:this.data.beizhu ["fromDate.beizhu"]:this.data.beizhu
// }); });
// let params = this.data.fromDate; let params = this.data.fromDate;
// let gender = ''; let gender = '';
// if(params.gender !== ''){ if(params.gender !== ''){
// gender = this.data.fromDate.gender == 0 ? '男' :'女' gender = this.data.fromDate.gender == 0 ? '' :''
// } }
// let reg = /^[1-9]\d{5}(?:18|19|20)\d{2}(?:0[1-9]|10|11|12)(?:0[1-9]|[1-2]\d|30|31)\d{3}[\dXx]$/; let reg = /^[1-9]\d{5}(?:18|19|20)\d{2}(?:0[1-9]|10|11|12)(?:0[1-9]|[1-2]\d|30|31)\d{3}[\dXx]$/;
// let phonereg = /^(?:(?:\+|00)86)?1\d{10}$/ let phonereg = /^(?:(?:\+|00)86)?1\d{10}$/
// if(params.username == ''){ if(params.username == ''){
// Toast('姓名不能为空'); Toast('姓名不能为空');
// return; return;
// }else if(gender == ''){ }else if(gender == ''){
// Toast('请选择您的性别'); Toast('请选择您的性别');
// return; return;
// }else if(!(reg.test(params.card))){ }else if(!(reg.test(params.card))){
// Toast('身份证号不正确'); Toast('身份证号不正确');
// return; return;
// }else if(!(phonereg.test(params.phone))){ }else if(!(phonereg.test(params.phone))){
// Toast('手机号格式不正确'); Toast('手机号格式不正确');
// return; return;
// }else if(params.homework == ''){ }else if(params.homework == ''){
// Toast('请选择作业类别'); Toast('请选择作业类别');
// return; return;
// }else if(params.zige == ''){ }else if(params.zige == ''){
// Toast('请选择资格类型'); Toast('请选择资格类型');
// return; return;
// }else if(params.peixun == ''){ }else if(params.peixun == ''){
// Toast('请选择培训类型'); Toast('请选择培训类型');
// return; return;
// } }
// app.information = this.data.fromDate; app.information = this.data.fromDate;
wx.navigateTo({ wx.navigateTo({
url: '/pages/uploadcard/uploadcard', url: '/pages/uploadcard/uploadcard',
}) })
...@@ -202,10 +203,12 @@ Page({ ...@@ -202,10 +203,12 @@ Page({
// if(options.price == null || options.price == undefined){ // if(options.price == null || options.price == undefined){
// price = // price =
// } // }
let phone = app.phone == '' ? wx.getStorageSync('phone') : app.phone
this.setData({ this.setData({
["fromDate.price"]:options.price, ["fromDate.price"]:options.price,
phone:app.phone, phone:phone,
["fromDate.phone"]:app.phone, ["fromDate.phone"]:phone,
["fromDate.id"]:options.id
}); });
//获取课程类型,动态生成列表 //获取课程类型,动态生成列表
app.colorUISdk.request({ app.colorUISdk.request({
...@@ -256,14 +259,24 @@ Page({ ...@@ -256,14 +259,24 @@ Page({
["popup.studyText"]:app.information.studyhigh == '' ? '点击选择文化程度' : app.information.studyhigh, ["popup.studyText"]:app.information.studyhigh == '' ? '点击选择文化程度' : app.information.studyhigh,
["popup.homeworkText"]:app.information.homework == '' ? '点击选择作业类别':app.information.homework, ["popup.homeworkText"]:app.information.homework == '' ? '点击选择作业类别':app.information.homework,
["popup.zigeTypeText"]:app.information.zige == '' ? '点击选择资格类型' : app.information.zige, ["popup.zigeTypeText"]:app.information.zige == '' ? '点击选择资格类型' : app.information.zige,
["popup.peixunTypeText"]:app.information.peixun == '' ? '点击选择培训类型' : app.information.peixun ["popup.peixunTypeText"]:app.information.peixun == '' ? '点击选择培训类型' : app.information.peixun,
["fromDate.price"]:app.information.price,
}); });
} }
}, },
onClickLeft(){ onClickLeft(){
wx.navigateBack({ let pages = getCurrentPages();
delta: 1, let prevPage = pages[pages.length - 2];
}) if(prevPage.route == "pages/uploadcard/uploadcard"){
wx.navigateBack({
delta: 3,
})
}else{
wx.navigateBack({
delta: 1,
})
}
}, },
/** /**
......
...@@ -130,7 +130,9 @@ Page({ ...@@ -130,7 +130,9 @@ Page({
if (data.errcode == 0) { if (data.errcode == 0) {
// let random = this.randomWord(false, 43); // let random = this.randomWord(false, 43);
// let random = Math.random().toString(36).substr(2); // let random = Math.random().toString(36).substr(2);
app.phone = data.phone_info.phoneNumber; app.phone = data.phone_info.phoneNumber; //双保险
wx.setStorageSync('phone', data.phone_info.phoneNumber);
Toast.success('登录成功'); Toast.success('登录成功');
this.setData({ this.setData({
isLogin:false, isLogin:false,
......
...@@ -102,8 +102,7 @@ Page({ ...@@ -102,8 +102,7 @@ Page({
} }
}, },
payOrder(){ payOrder(){
var openid = wx.getStorageSync('openid'); var openid = wx.getStorageSync('openid');
app.colorUISdk.request({ app.colorUISdk.request({
url: `wx/pay_one?openid=${openid}`, url: `wx/pay_one?openid=${openid}`,
method: 'POST' method: 'POST'
......
...@@ -3,259 +3,436 @@ import Toast from '../../vantPackage/toast/toast'; ...@@ -3,259 +3,436 @@ import Toast from '../../vantPackage/toast/toast';
const app = getApp(); const app = getApp();
Page({ Page({
/** /**
* 页面的初始数据 * 页面的初始数据
*/ */
data: { data: {
fileList:{ fileList: {
positive:[], //正面照 positive: [], //正面照
emblem:[], //国徽面 emblem: [], //国徽面
face:[], //上半身人脸 face: [], //上半身人脸
diploma:[] //毕业证 diploma: [] //毕业证
},
}, },
onClickLeft(){ },
wx.navigateTo({ onClickLeft() {
url: '/pages/document/subsign/subsign', wx.navigateTo({
}) url: '/pages/document/subsign/subsign',
}, })
beforeRead(event){ },
const { file, callback } = event.detail; beforeRead(event) {
let imageType = file.url.split('.'); const {
if((imageType[imageType.length-1] !== 'jpg') && (imageType[imageType.length-1] !== 'jpeg') && (imageType[imageType.length-1] !== 'png')){ file,
Toast.fail({ callback
message: '上传失败,请上传图片', } = event.detail;
forbidClick: true, let imageType = file.url.split('.');
if ((imageType[imageType.length - 1] !== 'jpg') && (imageType[imageType.length - 1] !== 'jpeg') && (imageType[imageType.length - 1] !== 'png')) {
Toast.fail({
message: '上传失败,请上传图片',
forbidClick: true,
});
callback(false);
} else if (file.size > 1000000) {
Toast.fail({
message: '图片大小超过限制,请重新上传',
forbidClick: true,
});
callback(false);
} else {
callback(true);
};
},
//身份证正面照
afterReadPositive(event) {
const {
file
} = event.detail;
// 当设置 mutiple 为 true 时, file 为数组格式,否则为对象格式
app.colorUISdk.requestImg({
url: 'infostudent/common/upload',
method: 'POST',
filePath: file.url,
header: {
"Content-Type": "multipart/form-data",
},
formData: {
file,
filePath: "D:/uploadFile/img"
}
}).then((res) => {
let result = JSON.parse(res);
if (result.code == 0) {
const {
positive = []
} = this.data.fileList;
positive.push({
...file,
url: res.result,
path: result.path
}); });
callback(false); this.setData({
}else if(file.size > 1000000){ ["fileList.positive"]: positive
Toast.fail({
message: '图片大小超过限制,请重新上传',
forbidClick: true,
}); });
callback(false); } else {
}else{
callback(true);
};
},
//身份证正面照
afterReadPositive(event){
const { file } = event.detail;
// 当设置 mutiple 为 true 时, file 为数组格式,否则为对象格式
app.colorUISdk.requestImg({
url:'infostudent/common/upload',
method: 'POST',
filePath:file.url,
header:{
"Content-Type": "multipart/form-data",
},
formData:{
file,
filePath:"D:/uploadFile/img"
}
}).then((res)=>{
let result = JSON.parse(res);
if(result.code == 0){
const { positive= [] } = this.data.fileList;
positive.push({ ...file, url: res.result });
this.setData({["fileList.positive"]:positive});
}else{
Toast.fail('上传失败');
}
})
},
deleteImgPositive(file) {
this.setData({["fileList.positive"]:[]});
},
//身份证反面照
afterReadEmblem(event){
const { file } = event.detail;
app.colorUISdk.requestImg({
url:'infostudent/common/upload',
method: 'POST',
filePath:file.url,
header:{
"Content-Type": "multipart/form-data",
},
formData:{
file,
filePath:"D:/uploadFile/img"
}
}).then((res)=>{
let result = JSON.parse(res);
if(result.code == 0){
const { emblem= [] } = this.data.fileList;
emblem.push({ ...file, url: res.result });
this.setData({["fileList.emblem"]:emblem});
}else{
Toast.fail('上传失败');
}
})
},
deleteImgEmblem(file) {
this.setData({["fileList.emblem"]:[]});
},
//上半身照片
afterReadFace(event){
const { file } = event.detail;
app.colorUISdk.requestImg({
url:'infostudent/common/upload',
method: 'POST',
filePath:file.url,
header:{
"Content-Type": "multipart/form-data",
},
formData:{
file,
filePath:"D:/uploadFile/img"
}
}).then((res)=>{
let result = JSON.parse(res);
if(result.code == 0){
const { face = [] } = this.data.fileList;
face.push({ ...file, url: res.result });
this.setData({["fileList.face"]:face});
}else{
Toast.fail('上传失败'); Toast.fail('上传失败');
} }
}) })
}, },
deleteImgReadFace(file) { deleteImgPositive(file) {
this.setData({["fileList.face"]:[]}); this.setData({
}, ["fileList.positive"]: []
//毕业证书 });
afterRead(event) { },
const { file } = event.detail; //身份证反面照
app.colorUISdk.requestImg({ afterReadEmblem(event) {
url:'infostudent/common/upload', const {
method: 'POST', file
filePath:file.url, } = event.detail;
header:{ app.colorUISdk.requestImg({
"Content-Type": "multipart/form-data", url: 'infostudent/common/upload',
}, method: 'POST',
formData:{ filePath: file.url,
file, header: {
filePath:"D:/uploadFile/img" "Content-Type": "multipart/form-data",
} },
}).then((res)=>{ formData: {
let result = JSON.parse(res); file,
if(result.code == 0){ filePath: "D:/uploadFile/img"
const { diploma = [] } = this.data.fileList; }
diploma.push({ ...file, url: res.result }); }).then((res) => {
this.setData({["fileList.diploma"]:diploma}); let result = JSON.parse(res);
}else{ if (result.code == 0) {
const {
emblem = []
} = this.data.fileList;
emblem.push({
...file,
url: res.result,
path: result.path
});
this.setData({
["fileList.emblem"]: emblem
});
} else {
Toast.fail('上传失败'); Toast.fail('上传失败');
} }
})
},
deleteImgRead(file) {
this.setData({["fileList.diploma"]:[]});
},
sendMeans(){
const toast = Toast.loading({
message: '订单生成中,请稍候。。。',
forbidClick: true,
loadingType: 'spinner',
});
app.colorUISdk.request({
url:`wx/gt?code=${e.detail.code}`, //上传课程价格接口
method: 'POST',
data:{
price:price,
courseName:''
}
}).then(({data})=> {
//创建订单成功,返回给我一些必要参数,然后调起微信支付
Toast.clear();
//唤起微信支付
let time = (new Date().getTime().toString()).substring(0,10)
wx.requestPayment({
appId:'wx95ac219beca2f34f',
timeStamp:time,
nonceStr:this.randomWord(true,parseInt((Math.random() * 20)),parseInt((Math.random() * 30))), //生成长度为20~30的随机字符串
package:'prepay_id=wx201410272009395522657a690389285100', //等待回传结果
signType:"RSA",
paySign:'', //后台加密计算好给我
fail:function(){
Toast.fail('您已取消支付')
},
})
if(data.errcode == 0){
let random = this.randomWord(false, 43);
}
this.setData({courseData: res.data.records})
}).catch(err=>{
console.log(err)
}) })
}, },
randomWord(randomFlag, min, max){ deleteImgEmblem(file) {
let str = "", this.setData({
range = min, ["fileList.emblem"]: []
arr = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']; });
// 随机产生 },
if(randomFlag){ //上半身照片
range = Math.round(Math.random() * (max-min)) + min; afterReadFace(event) {
const {
file
} = event.detail;
app.colorUISdk.requestImg({
url: 'infostudent/common/upload',
method: 'POST',
filePath: file.url,
header: {
"Content-Type": "multipart/form-data",
},
formData: {
file,
filePath: "D:/uploadFile/img"
}
}).then((res) => {
let result = JSON.parse(res);
if (result.code == 0) {
const {
face = []
} = this.data.fileList;
face.push({
...file,
url: res.result,
path: result.path
});
this.setData({
["fileList.face"]: face
});
} else {
Toast.fail('上传失败');
}
})
},
deleteImgReadFace(file) {
this.setData({
["fileList.face"]: []
});
},
//毕业证书
afterRead(event) {
const {
file
} = event.detail;
app.colorUISdk.requestImg({
url: 'infostudent/common/upload',
method: 'POST',
filePath: file.url,
header: {
"Content-Type": "multipart/form-data",
},
formData: {
file,
filePath: "D:/uploadFile/img"
} }
for(var i=0; i<range; i++){ }).then((res) => {
let pos = Math.round(Math.random() * (arr.length-1)); let result = JSON.parse(res);
str += arr[pos]; if (result.code == 0) {
const {
diploma = []
} = this.data.fileList;
diploma.push({
...file,
url: res.result,
path: result.path
});
this.setData({
["fileList.diploma"]: diploma
});
} else {
Toast.fail('上传失败');
} }
return str; })
}, },
/** deleteImgRead(file) {
* 生命周期函数--监听页面加载 this.setData({
*/ ["fileList.diploma"]: []
onLoad: function (options) { });
console.log(app.information); },
}, sendMeans() {
if(this.data.fileList.positive.length == 0){
Toast.fail("请上传身份证正面照");
return;
};
// if(this.data.fileList.emblem.length == 0){
// Toast.fail("请上传身份证反面照");
// return;
// };
// if(this.data.fileList.face.length == 0){
// Toast.fail("请上传上半身照");
// return;
// };
// if(this.data.fileList.diploma.length == 0){
// Toast.fail("请上传毕业证书或户口本现实学历");
// return;
// };
const toast = Toast.loading({
message: '订单生成中,请稍候。。。',
forbidClick: true,
loadingType: 'spinner',
});
app.colorUISdk.request({
url: "infostudent/studentSave",
data: {
courseId: app.information.id, //课程id
name: app.information.username, //学生姓名
sex: app.information.gender, //性别
card: app.information.card,
education: app.information.studyhigh, //文化程度
phone: app.information.phone,
company: app.information.company,
jobCategory: app.information.homework, //作业类别
qualificationsType: app.information.zige,
trainType: app.information.peixun,
remark: app.information.beizhu,
sfzzmimgUrl: this.data.fileList.positive[0].path,
// sfzbmimgUrl:this.data.fileList.emblem[0].path,
// sbsimgUrl:this.data.fileList.face[0].path,
// byzimgUrl:this.data.fileList.diploma[0].path
}
}).then((res) => {
console.log(res)
if (res.code == 0) {
Toast.clear();
let openid = wx.getStorageSync('openid');
let studentId = res.studentId;
app.colorUISdk.request({
url: `wx/pay_one?openid=${openid}&price=${parseFloat(parseInt(app.information.price * 100) / 100) }&studentId=${res.studentId}`,
//&phone=${app.information.phone}&price=${parseInt(app.information.price * 100)}&courseId=${app.information.id}
method: 'POST'
}).then(({
prepay_info,
sign_info
}) => {
console.log(prepay_info);
console.log(sign_info);
if (prepay_info !== undefined && sign_info !== undefined) {
wx.requestPayment({
"timeStamp": sign_info.timeStamp,
"nonceStr": sign_info.nonceStr,
"package": sign_info.package,
"signType": "RSA",
"paySign": sign_info.paySign,
"success": function (res) {
app.colorUISdk.request({
url: "wx/pay_success",
method:"POST",
}).then((data)=>{
if(data && data.code == 0){
Toast.success("支付成功");
setTimeout(()=>{
wx.switchTab({
url: '/pages/home/home',
})
},1000)
}else{
Toast.fail("服务异常");
}
})
},
"fail": function (res) {
//删除前一个
app.colorUISdk.request({
url: "infostudent/delete",
data: {
ids:studentId
}
}).then((data) => {
if (data && data.code === 0) {
Toast.fail({
message: '支付失败'
});
} else {
Toast.fail({
message: data.message
});
};
console.log(data);
})
},
// "complete":function(res){
// console.log(res);
// }
})
} else {
//删除前一个
app.colorUISdk.request({
url: "infostudent/delete",
data: {
ids:studentId
}
}).then((data) => {
if (data && data.code === 0) {
Toast.fail('生成订单失败,请稍候再试');
} else {
Toast.fail({
message: data.message
});
};
})
}
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
}, }).catch(err => {
console.log(err)
})
}
}).catch((err) => {
Toast('请求失败');
console.log(err);
})
// app.colorUISdk.request({
// url:`wx/gt?code=${e.detail.code}`, //上传课程价格接口
// method: 'POST',
// data:{
// price:price,
// courseName:''
// }
// }).then(({data})=> {
// //创建订单成功,返回给我一些必要参数,然后调起微信支付
// Toast.clear();
// //唤起微信支付
// let time = (new Date().getTime().toString()).substring(0,10)
// wx.requestPayment({
// appId:'wx95ac219beca2f34f',
// timeStamp:time,
// nonceStr:this.randomWord(true,parseInt((Math.random() * 20)),parseInt((Math.random() * 30))), //生成长度为20~30的随机字符串
// package:'prepay_id=wx201410272009395522657a690389285100', //等待回传结果
// signType:"RSA",
// paySign:'', //后台加密计算好给我
// fail:function(){
// Toast.fail('您已取消支付')
// },
// })
// if(data.errcode == 0){
// let random = this.randomWord(false, 43);
// }
// this.setData({courseData: res.data.records})
// }).catch(err=>{
// console.log(err)
// })
},
randomWord(randomFlag, min, max) {
let str = "",
range = min,
arr = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];
// 随机产生
if (randomFlag) {
range = Math.round(Math.random() * (max - min)) + min;
}
for (var i = 0; i < range; i++) {
let pos = Math.round(Math.random() * (arr.length - 1));
str += arr[pos];
}
return str;
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
console.log(app.information);
},
/** /**
* 生命周期函数--监听页面显示 * 生命周期函数--监听页面初次渲染完成
*/ */
onShow: function () { onReady: function () {
}, },
/** /**
* 生命周期函数--监听页面隐藏 * 生命周期函数--监听页面显示
*/ */
onHide: function () { onShow: function () {
}, },
/** /**
* 生命周期函数--监听页面卸载 * 生命周期函数--监听页面隐藏
*/ */
onUnload: function () { onHide: function () {
}, },
/** /**
* 页面相关事件处理函数--监听用户下拉动作 * 生命周期函数--监听页面卸载
*/ */
onPullDownRefresh: function () { onUnload: function () {
}, },
/** /**
* 页面上拉触底事件的处理函数 * 页面相关事件处理函数--监听用户下拉动作
*/ */
onReachBottom: function () { onPullDownRefresh: function () {
}, },
/** /**
* 用户点击右上角分享 * 页面上拉触底事件的处理函数
*/ */
onShareAppMessage: function () { onReachBottom: function () {
} },
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
}) })
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment