Open mcya opened 6 years ago
特点
view
, button
, text
等等, 多了一些 wx:if
这样的属性以及{{ }}
这样的表达式
onLoad
页面加载之后执行onLaunch
小程序启动之后 触发
// 展示本地存储能力
var logs = wx.getStorageSync('logs') || [] //取数据
logs.unshift(Date.now())
wx.setStorageSync('logs', logs) //存数据
视图容器组件: 容器、滚动scroll容器、滑动swiper组件 基础内容: 表单: 导航:跳转,或是覆盖当前页或是新建页面。 媒体: 地图: 画布:
app.json
里面打注释,其中app.json
所配置的文件都是相当于一个初始化默认值,如需要更改需要在对应的page
中的JSON文件进行重新声明。最后一个对象还必须去掉逗号,真皮啊!app.json
解读
{
"pages": [
// 所有的页面必须在这里进行声明,必须注意一点是:当你删除了某个页面之后,务必来这里删除对应的路径!
"page/component/index",
"page/component/pages/view/view",
"page/API/pages/my-play/my-play"
],
"window": { //关于头部和状态栏的声明,如需更改对应的属性,需要在对应的页面重写对应的属性。
"navigationBarTextStyle": "black",
"navigationBarTitleText": "默认的title",
"navigationBarBackgroundColor": "#F8F8F8",
"backgroundColor": "#F8F8F8"
},
"tabBar": { //配置底部属性
"color": "#7A7E83",
"selectedColor": "#3cc51f",
"borderStyle": "black",
"backgroundColor": "#ffffff",
"list": [ //菜单
{
"pagePath": "page/component/index", //所声明的路径需要在
"iconPath": "image/icon_component.png",
"selectedIconPath": "image/icon_component_HL.png",
"text": "组件-app.json"
},
{
"pagePath": "page/component/pages/view/view",
"iconPath": "image/icon_API.png",
"selectedIconPath": "image/icon_API_HL.png",
"text": "自定义的走你"
},
{
"pagePath": "page/API/pages/my-play/my-play",
"iconPath": "image/icon_API.png",
"selectedIconPath": "image/icon_API_HL.png",
"text": "接口"
}
]
},
"networkTimeout": { //网络超时时间
"request": 10000,
"connectSocket": 10000,
"uploadFile": 10000,
"downloadFile": 10000
},
"debug": false
}
tabbar
Tabbar
时,不要使用 redirectTo
而是使用 navigateTo
就可以了即需要Tabbar
使用redirectTo
跳转,不需要则用navigateTo
wx.navigateTo({
url:'../reg/reg'
})
微信小程序目前没有用来隐藏tabBar的API,完全依靠跳转来实现。其中url为必填,注意参数用法。
新增讨论;用草料二维码生成带参二维码小程序,参数传入汉字,汉字转码了。 页面路径 & 参数 配置:pages/index/index?name=测试&mobileNo=15200000000。页面onload出来的name参数 给我自动转码了, 我在微信开发工具里面配置汉字,显示正常,这是什么问题?
讲道理,buildQuery的时候你应该做下encodeURIComponent,然后拿到的时候再做下decodeURIComponent
wx.openDocument(OBJECT) 新开页面打开文档,支持格式:doc, xls, ppt, pdf, docx, xlsx, pptx
https://mp.weixin.qq.com/debug/wxadoc/dev/api/file.html#wxopendocumentobject
https://mp.weixin.qq.com/wxopen/devprofile
,配置服务器域名,否则不报错,无法下载,也无法预览。// demo
// <view data-url="这是文档下载地址" data-type="pdf" catchtap='downloadFile'></view>
downloadFile: function (e) {
console.log('e', e);
let type = e.currentTarget.dataset.type;
let url = e.currentTarget.dataset.url;
switch (type) {
case "pdf":
url += 'pdf';
break;
case "word":
url += 'docx';
break;
case "excel":
url += 'xlsx';
break;
default:
url += 'pptx';
break;
}
wx.downloadFile({
url: url,
// header: {},
success: function (res) {
var filePath = res.tempFilePath;
console.log('filePath', filePath);
wx.openDocument({
filePath: filePath,
success: function (res) {
console.log('打开文档成功')
},
fail: function (res) {
console.log(res);
},
complete: function (res) {
console.log(res);
}
})
},
fail: function (res) {
console.log('文件下载失败');
},
// complete: function (res) { },
})
}
//读取PDF文件 - vxkp
getfile: function () {
let that=this
that.setData({ send_file: 1 })
wx.showLoading({
title: 'loading',
})
setTimeout(function () {
wx.hideLoading()
}, 10000)
let params = wx.getStorageSync('mydata').orderId + '|' + app.globalData.room[that.data.buildid][that.data.floor][that.data.roomIndex].roomid;
wx.downloadFile({ //1.下载文档
// 2.url
url: app.globalData.serverPath + '/wxapi/login/getTemplate.do?tid=' + wx.getStorageSync('sysinfo').actinfo.templateid + '¶m=' + params +'&type=download',
success: function (res) {
wx.hideLoading();
that.setData({
send_file: 0
})
var Path = res.tempFilePath
wx.openDocument({ //3.读取文档
filePath: Path, //4.文档返回成功路径
fileType: 'doc', //5.需设置文档类型
success: function (res) {
console.log('打开文档成功')
},
fail: function (res) {
console.log(res)
}
})
},
fail: function (res) {
console.log(res)
}
})
}
// 简化
getfile: function () {
wx.downloadFile({ //1.下载文档
// 2.url
url: app.globalData.serverPath + '/action.do?params=params',
success: function (res) {
wx.openDocument({ //3.读取文档
filePath: res.tempFilePath, //4.文档返回成功路径
fileType: 'doc', //5.需设置文档类型
success: function (res) { console.log('打开文档成功') },
fail: function (res) { console.log(res) }
})
},
fail: function (res) { console.log(res) }
})
},
每次都能进入成功回调,但就是文件不出来,android手机上没有问题,每次都能打开,但是ios手机上出现频繁,只能偶尔打开?
每次都能进入成功回调,但就是文件不出来,安卓手机上没有问题,每次都能打开,但是IOS手机上出现频繁,只能偶尔打开?
在iOS 下是可以直接打开pdf 文件url 进行预览的。 设置好域名后,再使用web-view 打开对应的文件就可以了。 要注意文件路径中不能含有中文,否则会无法正确打开。
每次都能进入成功回调,但就是文件不出来,安卓手机上没有问题,每次都能打开,但是IOS手机上出现频繁,只能偶尔打开?
在iOS 下是可以直接打开pdf 文件url 进行预览的。 设置好域名后,再使用web-view 打开对应的文件就可以了。 要注意文件路径中不能含有中文,否则会无法正确打开。
文件路径没有中文。就是不管是pdf文件还是excel文件,都能下载成功,只是ios偶尔出现打不开的情况,wx.openDocument的sucess都已经执行到了,就是打不开文件
每次都能进入成功回调,但就是文件不出来,安卓手机上没有问题,每次都能打开,但是IOS手机上出现频繁,只能偶尔打开?
在iOS 下是可以直接打开pdf 文件url 进行预览的。 设置好域名后,再使用web-view 打开对应的文件就可以了。 要注意文件路径中不能含有中文,否则会无法正确打开。
文件路径没有中文。就是不管是pdf文件还是excel文件,都能下载成功,只是ios偶尔出现打不开的情况,wx.openDocument的sucess都已经执行到了,就是打不开文件
可能需要你设置文档类型!贴一份代码出来给你参考参考吧。这份代码再iOS和安卓都可以。
微信小程序 入坑
工具 微信开发者工具
官网:https://mp.weixin.qq.com/cgi-bin/wx(工具文档都在这里)
结构